1

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

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

  • 使用经典的手工 .ini 文件来存储这些首选项。但它看起来很丑陋且难以维护。
  • 包含 GUI 的整个类的序列化/反序列化。不知道这是否可能。

有任何想法吗?我应该怎么办?

提前致谢。

添加:

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

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

我还在等着看是否有另一种方法可以做到这一点,也许涉及一些绑定。

4

1 回答 1

3

看看Memento设计模式。

Eclipse RCP已经复用了这个原理,更多信息可以参考如下接口:

org.eclipse.ui.IMemento
于 2010-07-22T16:44:06.740 回答