style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">

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();
}
}

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de Jose Manuel

Algo como esto, ¿No?

public class Ventanas implements ActionListener{
        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.

style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">