Viruz Blog
¿Quieres reaccionar a este mensaje? Regístrate en el foro con unos pocos clics o inicia sesión para continuar.

Wizard Estático en NetBeans Platform parte 4

Ir abajo

Wizard Estático en NetBeans Platform parte 4 Empty Wizard Estático en NetBeans Platform parte 4

Mensaje  Admin (Viruz) Lun Dic 03, 2012 10:21 am

Hola amigos de Viruz Blog antes de proceder con la presente entrada quiero dar informe de que próximamente pasaremos a un nuevo tema como son las multivistas (Multiview windows) por lo que estaremos pausando el tema de los asistentes por un tiempo.

Retomando el tema en el tutorial anterior se ha modificado la parte del contenido del asistente, el objetivo de hoy es agregar nuestros primeros componentes gráficos y realizar algunas funciones con la ayuda de eventos para hacer

Lo que se necesita conocer
  • Wizard en NBP (Parte 2)
  • Wizard en NBP (Parte 3)

Pasos:

1. Comenzamos por abrir la clase EstaticoVisualPanel1 de manera que se abrirá el diseñador del IDE de NetBeans. En ese momento agregaremos 8 componentes (2 etiquetas , 1 campo de texto, 4 botones de radio y 1 panel) quedando de la siguiente forma:
[Tienes que estar registrado y conectado para ver esa imagen]
Nota: Puedes ocupar los componentes que desees, en la posición que gustes y elaborar más la decoración de tu asistente.

2. Haremos un encapsulamiento al campo de texto (métodos set y get) en el caso para este ejemplo se cambio el nombre de la variable, quedando de la siguiente manera:
Código:
public javax.swing.JTextField getNombre() {
    return nombre;
}
3. Ahora en la clase EstaticoWizardPanel1 y debemos buscar el método storeSettings() dentro de él haremos una modificación agregando lo siguiente:
Código:
((WizardDescriptor) settings).putProperty("nombre",((EstaticoVisualPanel1)getComponent()).getNombre().getText());
Con este código indicamos que la propiedad nombre será asignada con lo que se escriba en el campo de texto.

4. Cambiamos de clase a EstaticoWizardAction y en ella se encuentra una condición if (!cancelled) dentro agregamos el siguiente código:
Código:
String nombre = (String) wizardDescriptor.getProperty("nombre");
DialogDisplayer.getDefault().notify(new NotifyDescriptor.Message(nombre + " se ha creado Correctamente"));
De esta manera al finalizar el asistente nos pondrá un mensaje de notificación con el nombre que se tiene en el campo de texto.
[Tienes que estar registrado y conectado para ver esa imagen]
Ahora toca el turno de hacer una pequeña validación en el campo de texto esto puede funcionar para cuando se teclea un carácter no valido y no permite seguir avanzando al siguiente paso hasta ser corregido.
Pasos:

1. En la clase EstaticoWizardPanel1 se tiene la implementación WizardDescriptor.Panel, esta misma la cambiaremos por WizardDescriptor.ValidatingPanel , se implementa el método abstracto de la interfaz de nombre validate(), para trabajar en él.
validate(): Este método se llama cuando se realiza clic en los botones siguiente o finalizar y permite realizar una verificación profundo para averiguar que el panel se encuentra en estado válido y está bien para salir de él.
2. Si buscamos dentro de la clase encontraremos que la variable component es de la clase Component (validando la redundancia pero es que NetBeans no quiere que nos confundamos) debes tener algo como se muestra a continuación:
Código:
private Component component;

public Component getComponent() {
    if (component == null) {
        component = new EstaticoVisualPanel1();
    }
    return component;
}
El tipo de la variable la cambiaremos por el panel visual (clase donde agregamos los componentes gráficos anteriormente).
Código:
private EstaticoVisualPanel1 component;
3. Ahora dentro del método validate() pondremos lo siguiente:

Código:
@Override
public void validate() throws WizardValidationException {
    String name = componente1.getNombre().getText();
    if (name.equals("")) {
        throw new WizardValidationException(null, "Nombre Invalido", null);
    }
}
Este lleva una validación pequeña donde el campo de texto no debe ir vacío de ser cierta se manda a llamar a una excepción propia de wizard la cual mostrará una leyenda en la parte inferior izquierda.

Si haz seguido los pasos correctamente tendremos el siguiente resultado al no poner ninguna escritura en el campo de texto.
[Tienes que estar registrado y conectado para ver esa imagen]
Los botones suelen ser un dolor de cabeza aunque la plataforma de NetBeans para mi gusto cuenta con los básicos y los necesarios pero el usuario desea agregar, quitar o modificar alguna de estas opciones y por supuesto que se puede realizar.

Nota: Esta forma solo funciona si el asistente se esta ejecutando en una aplicación y no en un módulo independiente.

Pasos:

1. En nuestro IDE de NetBeans en la parte izquierda contamos con una ventana que cuenta con 3 tabulaciones por defecto (Projects, Files, Services) nos cambiaremos a Files y en este vamos a encontrar nuestras aplicaciones o proyectos organizados por carpetas y archivos que se contienen dentro y fuera de estas carpetas. Buscaremos la aplicación en la cual se esta trabajando y desplegamos la siguiente localización: branding - modules.

Dentro de la carpeta modules veremos otra carpeta dentro llamada org-netbeans-core-windows.jar.

OJO: Debes asegurarte que empieces dentro de la carpeta modules.

2. Damos clic derecho en modules y en el menú escogemos New>Other, nos aparecerá el asistente lo cual en categorías escogemos Other y en tipo de archivos Folder.

[Tienes que estar registrado y conectado para ver esa imagen]
La siguiente ruta de carpetas que vamos a crear se muestra en la imagen la cual debe ser igual o exacta para evitar algún tipo de confusión.
Nota: Para crear el Bundle es en la opción de "Properties File".

3. Una vez creado todo abrimos el Bundle.properties cambiaremos el texto a español del botón Next así que ponemos la siguiente instrucción dentro de este archivo.
Código:
CTL_NEXT=&Siguiente >
Otras opciones que se pueden utilizar en mediante los botones:

Código:
CTL_CANCEL=&Cancelar
CTL_PREVIOUS=&< Regresar
CTL_FINISH=&Finalizar
Ejecutamos la aplicación y el asistente y queda de la siguiente manera:
[Tienes que estar registrado y conectado para ver esa imagen]
Autor: Viruz study
Enlace: Wizard en NBP (Parte 4)
Admin (Viruz)
Admin (Viruz)
Admin

Mensajes : 148
Fecha de inscripción : 23/09/2012
Edad : 35
Localización : Desktop

https://viruz.foroactivo.mx

Volver arriba Ir abajo

Volver arriba

- Temas similares

 
Permisos de este foro:
No puedes responder a temas en este foro.