java - 在 javafx 中保存最后一个窗口属性/内容

标签 java javafx-8

我想在关闭 java fx 应用程序之前保存最后一个窗口的信息(可以在我的程序中使用几个窗口)。 我尝试在 stop() 方法中执行此操作,但它保存了第一个打开的窗口。

使用Platform.exit()在关闭随机窗口后停止整个应用程序。 我尝试做一些特殊的主窗口,并让用户使用额外的按钮保存所选的窗口,但这不是最漂亮的解决方案。

如何保存上次使用的窗口?有没有可以解决我的问题的事件处理程序?

最佳答案

是的,有一些方法你可以尝试......

1) 在 Application 类内部的 Application#launch 方法中,指定 onCloseRequest 事件

yourStage.setOnCloseRequest(event -> {
    //Do Your on close events here
});

2) 在您的 Application 类中,重写 Application#stop 方法

@Override
public void stop(){
    //Do Your on close events here
}

或者,您可以指定 jvm 退出时的系统关闭 Hook ,您可以这样做

Runtime.getRuntime().addShutdownHook(() -> whatToDoOnExit());

关于java - 在 javafx 中保存最后一个窗口属性/内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54297689/

相关文章:

java - WebEngine 未加载以 HTML (javafx) 链接的文件

java - 使用 Javafx 在 ListView 中模仿 CTRL+单击多选

java - 来自谷歌云存储的文件列表

c# - Arduino串行监视器和java重置变量

java.lang.AssertionError : Expectation failure on Verify: jUnit4 TestCase

java - 如何在 surfaceview 中将 Android 相机更改为纵向?

java - 使用 Java 的 AWS Lambda 无法从 S3 获取文件

JavaFX 卡住问题

java - 将多个jar合并为一个(使用maven)

java - 在页面加载时将 JS<->JavaFX Bringe 注入(inject)到 WebView