Wizard Dinámico en NetBeans Platform parte 1
Página 1 de 1.
Wizard Dinámico en NetBeans Platform parte 1
En el primer post se mencionaron 3 tipos de combinaciones u opciones que se pueden realizar al crear un asistente, en todo este tiempo se ha trabajado con las opciones de Custom-Static hasta ahora se conoce que esta opción trabaja de manera secuencial es decir que va paso por paso dependiendo de los paneles que el usuario haya otorgado.
Cambiaremos la mecánica de lo que se ha estado realizando y veremos como funciona un asistente en modo dinámico.
Lo que se necesita conocer
Pasos:
1. Este paso es opcional ya que puedes trabajar en el mismo paquete del asistente estático o crear otro paquete como lo haré yo para no mezclar las clases.
2. Al igual que en el asistente de tipo estático se crearan las formas de tipo visual y un panel de control, pero a diferencia de este no tendremos la clase NombreWizardAction si no otra que la sustituye por nombre NombreWizardIterator.
Antes de seguir avanzando haremos algo óptimo y nuevo que es cambiar el nombre de los paneles y es que al crear siempre tendremos el mismo nombre de los paneles donde solo se diferencian por el número al final.
DinamicoWizardPanel1.java
DinamicoWizardPanel2.java.
3. Esto lo haremos muy rápido solo damos clic derecho en el archivo .java que queramos modificar y en el menú escogemos Refactor - Rename.
Una vez creado el asistente dinámico vamos directo por la primera acción a realizar. Cuando creamos el asistente de manera estática bastaba con poner las ID de las acciones, el registro y las referencias, dentro de la clase de WizardAction.
Aquí lo tendremos que hacer mediante el asistente de crear una acción para poder iniciarlo dentro de nuestra aplicación.
Pasos:
1. Creamos una acción y en tipo de acción escogemos la opción de Always Enabled.
2. En la siguiente ventana de registro de la GUI las opciones que serán otorgadas son las siguientes:
3. Abrimos la clase creada y deberá quedar de la siguiente manera:
4. Por último en la clase DinamicoWizardIterator creamos el método initialize() y declaramos una variable de tipo WizardDescriptor.
Enlace: Wizard Dinámico en NBP (Parte 1)
Cambiaremos la mecánica de lo que se ha estado realizando y veremos como funciona un asistente en modo dinámico.
Lo que se necesita conocer
- Acciones en NBP
- Wizard Estático en NBP
Pasos:
1. Este paso es opcional ya que puedes trabajar en el mismo paquete del asistente estático o crear otro paquete como lo haré yo para no mezclar las clases.
org.prueba.modulo.asistente.dinamico
Realizamos la misma operación para crear un asistente a diferencia de que en las opciones se escogerán Custom - Dynamic y el número de paneles pondremos 3.[Tienes que estar registrado y conectado para ver esa imagen]
En la siguiente ventana en el campo Class Name Prefix pondremos dinámico y finalizamos el asistente.2. Al igual que en el asistente de tipo estático se crearan las formas de tipo visual y un panel de control, pero a diferencia de este no tendremos la clase NombreWizardAction si no otra que la sustituye por nombre NombreWizardIterator.
Antes de seguir avanzando haremos algo óptimo y nuevo que es cambiar el nombre de los paneles y es que al crear siempre tendremos el mismo nombre de los paneles donde solo se diferencian por el número al final.
DinamicoWizardPanel1.java
DinamicoWizardPanel2.java.
3. Esto lo haremos muy rápido solo damos clic derecho en el archivo .java que queramos modificar y en el menú escogemos Refactor - Rename.
[Tienes que estar registrado y conectado para ver esa imagen]
Ahora cambiaremos el nombre (esto depende de ustedes y así diferenciamos los paneles y los componentes que pondrán dentro de él).[Tienes que estar registrado y conectado para ver esa imagen]
Recomendación: Si cambias el nombre del panel visual, también realizarlo en el panel de control con el mismo nombre.Una vez creado el asistente dinámico vamos directo por la primera acción a realizar. Cuando creamos el asistente de manera estática bastaba con poner las ID de las acciones, el registro y las referencias, dentro de la clase de WizardAction.
Aquí lo tendremos que hacer mediante el asistente de crear una acción para poder iniciarlo dentro de nuestra aplicación.
Pasos:
1. Creamos una acción y en tipo de acción escogemos la opción de Always Enabled.
2. En la siguiente ventana de registro de la GUI las opciones que serán otorgadas son las siguientes:
- Categoría: File.
- Menú: File.
- Posición: Estatico Wizard - HERE - New Project...
3. Abrimos la clase creada y deberá quedar de la siguiente manera:
import java.awt.Dialog;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.text.MessageFormat;
import org.openide.DialogDisplayer;
import org.openide.WizardDescriptor;
import org.openide.awt.ActionRegistration;
import org.openide.awt.ActionReference;
import org.openide.awt.ActionReferences;
import org.openide.awt.ActionID;
import org.openide.util.NbBundle.Messages;
@ActionID(category = "File",
id = "org.prueba.modulo.asistente.dinamico.WizardDinamico")
@ActionRegistration(iconBase = "org/prueba/modulo/asistente/dinamico/application_view_gallery.png",
displayName = "#CTL_WizardDinamico")
@ActionReferences( {
@ActionReference(path = "Menu/File", position = 55)
})
@Messages("CTL_WizardDinamico=Asistente Dinámico")
public final class WizardDinamico implements ActionListener {
public void actionPerformed(ActionEvent e) {
DinamicoWizardIterator iterator = new DinamicoWizardIterator();
WizardDescriptor wizardDescriptor = new WizardDescriptor(iterator);
iterator.initialize(wizardDescriptor);
// {0} será reemplazado por WizardDescriptor.Panel.getComponent (). getName ()
// {1} será reemplazado por WizardDescriptor.Iterator.name ()
wizardDescriptor.setTitleFormat(new MessageFormat("{0} ({1})"));
wizardDescriptor.setTitle("Viruz Blog Dynamic Wizard");
Dialog dialog = DialogDisplayer.getDefault().createDialog(wizardDescriptor);
dialog.setVisible(true);
dialog.toFront();
boolean cancelled = wizardDescriptor.getValue() != WizardDescriptor.FINISH_OPTION;
if (!cancelled) {
// do something
}
}
}
4. Por último en la clase DinamicoWizardIterator creamos el método initialize() y declaramos una variable de tipo WizardDescriptor.
- Código:
private WizardDescriptor wizardDesc;
public void initialize(WizardDescriptor wizardDescriptor) {
wizardDesc = wizardDescriptor;
}
[Tienes que estar registrado y conectado para ver esa imagen]
Autor: Viruz Enlace: Wizard Dinámico en NBP (Parte 1)
Temas similares
» Wizard Estático en NetBeans Platform parte 3
» Wizard Estático en NetBeans Platform parte 2
» Wizard Estático en NetBeans Platform parte 4
» Wizard en NetBeans Platform
» Dependencias en NetBeans Platform parte 1
» Wizard Estático en NetBeans Platform parte 2
» Wizard Estático en NetBeans Platform parte 4
» Wizard en NetBeans Platform
» Dependencias en NetBeans Platform parte 1
Página 1 de 1.
Permisos de este foro:
No puedes responder a temas en este foro.
|
|