Cuando necesitamos utilizar una ventana de Login para nuestra aplicación basada en NetBeans Platform, podemos referirnos al tutorial
NetBeans Platform Login Tutorial
Pasos:
Creamos un Panel de opciones
Agregamos los elementos al diseño
Nos muestra las opciones
Agregamos un nuevo modulo al proyecto
Agregamos los elementos al diseño
En el método store() agregamos
NbPreferences.forModule(UserMagnamentPanel.class).put("user", jTextField1.getText());
NbPreferences.forModule(UserMagnamentPanel.class).put("pass",
jPasswordField1.getPassword().toString());
Importamos
import org.openide.util.NbPreferences;
En el método load() agregamos
jTextField1.setText(NbPreferences.forModule(UserMagnamentPanel.class).get("user", ""));
jPasswordField1.setText(NbPreferences.forModule(UserMagnamentPanel.class).get("pass", ""));
Nos muestra las opciones
Agregamos un nuevo modulo al proyecto
Creamos un instalador
Seleccionamos Installer/Activator
Creamos un Panel
Diseñamos los componentes
En las propiedades del módulo agregamos. API de Diálogos, Api de Utilidades para iU
Ahora llamaremos el Panel desde el Installer.
Primero creamos un objeto
LoginFrame form = new LoginFrame();
y agregamos en el método restored()
NotifyDescriptor nd = new NotifyDescriptor.Message("Ok");
DialogDisplayer.getDefault().notifyLater(nd);
importamos
import org.openide.DialogDisplayer;
import org.openide.NotifyDescriptor;
Quedaría de la siguiente manera
Ejecutamos el proyecto
Solo nos mostrara el mensaje de OK.
Ahora modificamos el código de Installer.java para que muestre el panel de login. Y Creamos el
metódo createLoginDialog()
@Override
public void restored() {
createLoginDialog();
}
private void createLoginDialog(){
NotifyDescriptor nd = new NotifyDescriptor.Confirmation(form, "Login");
DialogDisplayer.getDefault().notifyLater(nd);
}
Ejecutamos el proyecto
Ahora si nos muestra el panel solicitando la información del usuario.
Comments
cannot find symbol
symbol : class UserMagnamentPanel
y se supone que es con el import org.openide.util.NbPreferences;
que se deberia de solucionar eso, pero no lo hace, aaaa me podrias ayudar por favor