在Java / SWT中保存窗口的状态

时间:2010-07-22 16:27:16

标签: java swt preferences user-preferences

我正在尝试使用Java和SWT为GUI构建一个小应用程序。我正在寻找一种方法来存储某些文件中用户设置的首选项,我的意思是,如果窗口已调整大小,那么应该保存下一次应用程序启动时的新大小。像文本框等一些控件一样。

我提出了两个解决这个问题的想法:

  • 使用经典的手工制作的.ini文件来存储这些首选项。但它看起来很丑陋而难以维持。
  • 包含GUI的整个类的序列化/反序列化。 Dunno,如果这是可能的话。

有什么想法吗?我该怎么办?

提前致谢。

加了:

我不是在做一个Eclipse RCP项目,它只是一个普通的 SWT应用程序。

更多: 我已经尝试过序列化,但SWT小部件不支持它,所以我发现的唯一其他选项是创建另一个类,比如Configuration,将其标记为可序列化并保留我的小部件的值。几乎就像使用java.util.prefs.Preferences,但不是那么简单。

我还在等着看是否有另一种方法可以做到这一点,也许还有一些约束力。

1 个答案:

答案 0 :(得分:3)

查看Memento设计模式。

Eclipse RCP已经重用了这个原则,您可以参考以下界面获取更多信息:

org.eclipse.ui.IMemento