【问题标题】:How to persiste or save the JavaFX UI state?如何持久化或保存 JavaFX UI 状态?
【发布时间】:2015-12-21 20:31:42
【问题描述】:

这里有人问过这个问题: How to persist JavaFX GUI State? 并且有标签 javafx-2。但没有答案。

我会再问一遍并添加更多标签。

我正在寻找类似于 JSR 296: Swing Application Framework 中所做的事情,其中​​演示应用程序会记住它的窗口大小、位置等。例如,如果用户最大化窗口,然后关闭, 再次打开程序,窗口最大化。

【问题讨论】:

标签: java swing user-interface javafx javafx-8


【解决方案1】:

您可以使用Preferences API 存储基本信息。

根据操作系统,首选项保存在不同的位置(例如在 Windows 中,它们存储在注册表文件中)。

典型用法如下:

  • 存储一个值:

    Preferences prefs = Preferences.userNodeForPackage(MyClass.class);
    prefs.putBoolean("isWindowMaximized", true);
    
  • 获取值:

    Preferences prefs = Preferences.userNodeForPackage(MyClass.class);
    boolean value = prefs.getBoolean("isWindowMaximized", false);
    

您将在Oracle tutorial 中找到有关此 API 的更多信息。

【讨论】:

  • 应用程序与注册表混在一起是好事吗?但我会检查一下,希望它可以配置为保存到属性文件中。否则我想这比普通的 java.util.Properties 有点改进
  • 但不像 Swing 应用程序框架。自动完成 ui 状态持久化的地方
猜你喜欢
  • 1970-01-01
  • 2016-11-08
  • 2018-12-28
  • 2015-07-25
  • 2021-04-20
  • 2011-01-09
  • 1970-01-01
  • 2021-08-01
  • 2016-10-27
相关资源
最近更新 更多