Java 代码完成后关闭swing应用程序

Java 代码完成后关闭swing应用程序,java,swing,jframe,Java,Swing,Jframe,这无疑是一个简单的问题,但经过一些研究,我还没有想出任何东西 我有以下表格中的代码: public static void main(Strings[] args) { final JFrame frame = new JFrame("Symbol Formatter"); final JButton button = new JButton("Begin"); final JFileChooser filechoose = new JFileChooser();

这无疑是一个简单的问题,但经过一些研究,我还没有想出任何东西

我有以下表格中的代码:

    public static void main(Strings[] args) {
    final JFrame frame = new JFrame("Symbol Formatter");
    final JButton button = new JButton("Begin");
    final JFileChooser filechoose = new JFileChooser();

    button.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent ae) {
            filechoose.showOpenDialog(frame);
            filename = filechoose.getSelectedFile();

            doSomething(filename);

            button.setEnabled(false);
            frame.setVisible(false); //edit for Andrew Thompson
        }

    });
    JPanel panel = new JPanel();
    panel.add(button);
    frame.add(panel);
    frame.pack();
    frame.setSize(250, 75);
    frame.setLocationByPlatform(true);
    frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
    frame.setVisible(true);
}
我想在
doSomething(filename)
完成后关闭swing应用程序。此时,原始帧仍保持原样,应用程序仅在手动关闭帧时终止。如何关闭一次
doSomething(filename)
已运行一次

我相信这是一个简单的问题,只需要更改
setDefaultCloseOperation
,但是文档对我帮助不大

另外,是否有方法将标题添加到
showOpenDialog
?因此,它的标题类似于“选择库文件”,您可以使用:

frame.dispose()
您可以使用:

frame.dispose()
调用

frame.setVisible(false);
打电话给


有关文件选择器对话框标题,请参阅。

有关文件选择器对话框标题,请参阅。

如果将默认关闭操作更改为

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
调用dispose应终止应用程序并退出JVM


如前所述,如果失败,调用
System.exit(0)
肯定会终止te JVM

我相信如果您将默认关闭操作更改为

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
调用dispose应终止应用程序并退出JVM


如前所述,如果失败,调用
System.exit(0)
肯定会终止te JVM

actionPerformed
实现结束时添加
System.exit(0)
怎么样?另外(取决于具体情况),您可能希望使用
frame.setDefaultCloseOperation(JFrame.EXIT_on_CLOSE)
在框架关闭时退出整个应用程序(不仅仅是为了处理窗口)。投票支持“swingers”OT的用法:另请参见引用的标准名称。只添加
系统如何。在
操作执行
实现结束时退出(0)
?另外(取决于具体情况),您可能希望使用
frame.setDefaultCloseOperation(JFrame.EXIT_on_CLOSE)
在框架关闭时退出整个应用程序(不仅仅是为了处理窗口)。投票支持“swingers”OT的用法:另请参见引用的标准名称。您已经证明自己了解自己的内容,但我担心,在这种情况下,这是不对的,它不会终止应用程序。它简单地隐藏了它。发布一个SSCCE,我将进行实验。我添加了那个方法调用,我认为这是正确的。在Eclipse中运行时,应用程序不会终止,这对于实现来说是一个问题。您已经展示了自己的知识,但我担心,在本例中,这是不对的,它不会终止应用程序。它简单地隐藏了它。发布一个SSCCE,我将进行实验。我添加了那个方法调用,我认为这是正确的。在Eclipse中运行时,应用程序不会终止,这成为实现的一个问题。