boton que me envie a frame dependiendo condicion (java)
Hola compañeros, quiziera saber como con un boton dependiendo la opcion me envie a el frame que desee, lo gago pero solo para uno como le hago para que con una condicion me envie dependiendo la opcion que escoja. Si yo escojo la opcion del frame de Datos Generales o "Datos Personales" pero no me enlaza
String cve= String.valueOf(jPasswordField1.getText());
if(cve.equals(hermosillo)){
JOptionPane.showMessageDialog(null,"BIENVENIDO");
DATOS_GENERALES tablita= new DATOS_GENERALES(null, true);
tablita.setVisible(true);
this.dispose();
}
else if(cve.equals(merida)){
JOptionPane.showMessageDialog(null,"BIENVENIDO");
DATOS_PERSONALES tablita= new DATOS_PERSONALES(null, true);
tablita.setVisible(true);
this.dispose();
}
}
- Inicie sesión o regístrese para enviar comentarios
Algo como esto, ¿No?
private JFrame frame;
private JTextField campo;
private JButton boton;
public Ventanas() {
frame = new JFrame("Ventana");
frame.getContentPane().setLayout(new FlowLayout());
campo = new JTextField("Aqui el texto");
boton = new JButton("Da clic");
boton.addActionListener(this);
frame.add(campo);
frame.add(boton);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.pack();
}
public void actionPerformed(ActionEvent e) {
String var = campo.getText();
if(var.equals("ventana1")) {
new Ventana1();
} else if(var.equals("ventana2")) {
new Ventana2();
}
}
public static void main(String arf[]) {
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
}catch (Exception e) {
e.printStackTrace();
}
new Ventanas();
}
}
class Ventana1 extends JDialog {
public Ventana1() {
setTitle("Ventana 1");
add(new JLabel("Estas en la ventana 1"));
setVisible(true);
pack();
}
}
class Ventana2 extends JDialog {
public Ventana2() {
setTitle("Ventana 2");
add(new JLabel("Estas en la ventana 2"));
setVisible(true);
pack();
}
}
Recuerda que si vas a usar otros contenedores de alto nivel, deberian ser JDialog y no JFrame. De esa manera tu aplicacion se centraliza en el frame.
Por cierto, el metodo
dispose();
. Te cierra la aplicacion despues de ser visible.