为什么System.exit(0)在NetBeans中不起作用?

时间:2012-08-04 04:50:19

标签: java netbeans

我使用NetBeans(在Windows下),在我的GUI程序中,我添加了一个“关闭”按钮。在按钮上,我按下鼠标的右键 - >活动 - >行动 - >为actionPerformed。在代码中,我将其编写如下。

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

但是在跑完之后,我按下了“关闭”按钮,程序没有退出。相反,它被阻止了,我无法再关闭它了。为什么以及如何处理它?<​​/ p>

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

Plus:代码下方表示jButton2事件已注册到ActionListener,它由NetBeans自动添加。

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

2 个答案:

答案 0 :(得分:0)

1。首先,您使用ActionListener 注册这个关闭按钮了吗?

2。Event Dispatcher Thread(EDT)仅处理GUI ,不要在此处执行任何处理。

答案 1 :(得分:0)

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

 jFrameName.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);