java - 如何在退出前保存应用程序选项?

标签 java swing desktop-application processing

我做了一个应用程序,我需要在退出前保存一些选项。(像窗口尺寸,...,将写入文件中。)

主框架已经设置了这个:

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

如何保存我感兴趣的选项?(当然是在退出之前)

谢谢!

最佳答案

如果您只想在应用程序关闭时做某事,您可以使用以下代码 Hook 关闭:

    Runtime.getRuntime().addShutdownHook(new Thread(new Runnable() {

        public void run() {
            // Do what you want when the application is stopping
        }
    }));

但是,这不允许您不关闭窗口。如果您需要在真正退出之前检查某些内容,您可以覆盖 windowClosing事件:

addWindowListener(new WindowAdapter() {
    public void windowClosing(WindowEvent e) {
        // Do what you want when the window is closing.
    }
});

请注意,第一个解决方案 - 使用关闭 Hook - 的优点是它与窗口事件无关,并且即使应用程序被另一个事件停止也会执行(当然,如果 Java 进程除外被残忍杀害)。

关于java - 如何在退出前保存应用程序选项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2361510/

相关文章:

java - 下载在 ListView 中重新开始

java - 如何使用 Java 中 if 语句中存在的用户输入?

java - JPA:在 fied 和 getter 上设置 @Id 之间的区别

java - 使用 documentFilter 过滤掉制表符

java - 图像不会立即在 Swing Java 桌面应用程序中绘制/加载

java - 写入txt文件,空指针异常

java - Swing 和观察者模式

java - Accordion 菜单在 java 中显示一组图像

c# - .NET GC 停止桌面应用程序 - 性能问题

java - 在 HIDE_ON_CLOSE 之后显示 FrameView