发布
社区首页 >问答首页 >为什么在NetBeans中System.exit(0)不起作用?

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

Stack Overflow用户
提问于 2012-08-04 12:50:19
回答 2查看 4.7K关注 0票数 0

我使用NetBeans (在Windows下),并在我的图形用户界面程序中添加了一个“关闭”按钮。在按钮上,我按下鼠标-> Events -> Action -> actionPerformed的右键。在代码中,我的代码如下所示。

代码语言:javascript
代码运行次数:0
复制
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
    System.exit(0);
}

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

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

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

代码语言:javascript
代码运行次数:0
复制
        jButton2.setText("Close");
        jButton2.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                        jButton2ActionPerformed(evt);
                }
        });
EN

回答 2

Stack Overflow用户

发布于 2012-08-04 12:55:54

1.首先,你有没有把这个关闭按钮注册到ActionListener上?

2.让图形用户界面( Event Dispatcher Thread )只处理图形用户界面(),不要在这里做任何处理。

票数 0
EN

Stack Overflow用户

发布于 2012-08-04 13:05:46

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

代码语言:javascript
代码运行次数:0
复制
 jFrameName.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11805987

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档