0

我使用 NetBeans(在 Windows 下)并在我的 GUI 程序中添加了一个“关闭”按钮。在按钮上,我按鼠标右键-> 事件-> 动作-> actionPerformed。在代码中,我如下所示。

private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
    System.exit(0);
}

但运行后,我按下“关闭”按钮,程序并没有退出。相反,它被阻止了,我不能再关闭它了。为什么以及如何处理它?

在 Linux NetBeans 下执行相同的程序时,“System.exit”运行良好,这是否意味着我需要在 Windows 下重新安装 NetBeans?或者任何人有同样的问题?

另外:下面的代码表示 jButton2 事件已注册到 ActionListener,它是由 NetBeans 自动添加的。

        jButton2.setText("Close");
        jButton2.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                        jButton2ActionPerformed(evt);
                }
        });
4

2 回答 2

0

1.首先,您是否使用注册了此关闭按钮ActionListener

2.Event Dispatcher Thread(EDT)只处理GUI,不要在这里做任何处理。

于 2012-08-04T04:55:53.730 回答
0

我猜你正在使用 JFrame 来构建你的 GUI。在这种情况下,处理此问题的一种简单方法是添加以下行;

 jFrameName.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
于 2012-08-04T05:05:46.247 回答