在JFrame之间切换

时间:2015-07-11 18:13:53

标签: java swing user-interface jdbc swingbuilder

我正在Java Swing中创建学生数据库项目。现在我创建了许多JFrame。例如,如果我想添加一个新的学生将出现一个新的框架,其中将有一些文本字段和按钮,现在我想使最后的JFrame消失。我使用dispose()方法关闭正在运行的JFrame,并使用.setVisible(true)作为下一帧,我对下一帧做了同样的事情,当添加学生框架的工作结束时,它将返回旧的JFrame,我使用相同的程序,但事实证明Frame没有消失,只有运行我的程序后的第一帧正在消失,但其他人不是, 这是第一个代码

    btnAdd = new JButton("Add");
    btnAdd.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent arg0) {

            try{

                frame.dispose();
                frame.setVisible(false);
                AddStudent add=new AddStudent();
                add.setVisible(true);


            }catch(Exception e){
                e.printStackTrace();
            }
        }
    });

第二个代码是

    btnAddStudent = new JButton("Add Student");
    btnAddStudent.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent arg0) {
            //int action=JOptionPane.showConfirmDialog(null, "Do You   Really Want To Add This Studen?","Delete",JOptionPane.YES_NO_OPTION);
            //if(action==0){
            try{

                frame.dispose();
                frame.setVisible(false);

                Admin admin=new Admin();
                admin.setVisible(true);
            }catch(Exception e){
                e.printStackTrace();
            } 
            //}

        }
    });

现在当我从第一帧到第二帧时,第一帧消失,当第二帧的工作结束并且第一帧到来时,第二帧不会消失。两个帧都在不同的类中。任何方案?抱歉我的英文不好

1 个答案:

答案 0 :(得分:0)

我的个人经验告诉我,在同一级别拥有多个JFrame并不是一个好主意。

您应该创建一个JFrame作为“Main”,并在需要时创建其他JFrame而不释放“Main”JFrame。

我不确定我是否解释得很好,英语不是我的第一语言。

这个想法基本上不是在创建另一个JFrame时处理当前的JFrame。