java - 如何打开新窗口

标签 java swing user-interface jframe

我有一堂这样的课:

public class A {
    public static void main() {
        B f1 = new B();
        f1.setVisible(true);
    }

    class B extends JFrame {
        public B() {
            JButton btn = new JButton("click me");
            btn.addActionListener(new ActionListener() {
                public void actionPerformed(ActionEvent evt) {
                    C f2 = new C();
                    f2.setVisible(true);
                }
            });
            add(btn);
        }
    }

    class C extends JFrame {
        public C() {
            //whatever here
        }
    }
}

当我第一次运行这个java代码时, 窗口 X 包含一个按钮“单击我”。我点击后,又弹出一个新窗口Y。 但问题是,当我关闭新窗口Y时,旧窗口X会自动与Y一起关闭。 (即它们同时关闭)

我想要做的是,在关闭 Y 后,X 保留在那里并且不被关闭。怎么做?

最佳答案

最简单的方法,将 this.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE) 放在第二个窗口构造函数中。

其他方式:http://www.leepoint.net/notes-java/GUI/containers/10windows/12frameclose.html

关于java - 如何打开新窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10500124/

相关文章:

.net - .Net 2.0/3.5/4.0 中的 Windows 窗体实现有何区别?

java - 使用 Java 创建 Activity 目录用户时遇到问题

java - 如何在 Java 和 Gradle 项目中使用 buildConfigField

python - 在 sys.exit() 之外的 pyqt 应用程序上调用 exec_()

java - 使用 JTable 显示 Arraylist 的值

java - JFrame GridBagLayout 组件定位

java - redisson连接到远程集群

java - 如何在不关闭连接的情况下更改波特率?

java - 如何制作可调整大小的 JDialog?

java - 获取单选按钮并将其保存在 ArrayList 中