Java - 仅在关闭时配置JFrame?

时间:2011-01-12 23:13:29

标签: java swing dispose

在我的Java程序中,我想,无论其他窗口是否打开,只要用户点击角落中的红色X,只是摆动框架关闭。我尝试使用JFrame.DISPOSE_ON_CLOSE和其他窗口侦听器,但是当我退出一个JFrame时,系统仍然退出。

为了澄清,假设我有两个JFrame可见,退出一个自动退出另一个,系统退出。关于如何关闭一个JFrame的任何想法?感谢。

2 个答案:

答案 0 :(得分:7)

这对我有用:

public class Test {

    public static class TestFrame implements Runnable{
        public void run() {
            JFrame frame = new JFrame();
            frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
            frame.setSize(200, 300);
            frame.setVisible(true);
        }
    }

    public static void main(String[] args) {
        EventQueue.invokeLater(new TestFrame());
        EventQueue.invokeLater(new TestFrame());
    }
}

答案 1 :(得分:0)

Finnw是正确的 - 我设置了一个新的WindowListener(虽然它从未调用过System.exit(),除非默认情况下这样做)但我现在可以处理它了。谢谢大家