2010-07-22 57 views
1

我正嘗試使用Java和SWT爲GUI構建一個小型應用程序。我正在尋找一種方法來將用戶設置的首選項存儲在某個文件中,我的意思是,如果窗口已調整大小,那麼應該在下一次應用程序啓動時保存新的大小。與文本框等一些控件一樣的東西。在Java/SWT中保存一個窗口的狀態

我想出了兩種思路來解決這個問題:

  • 採用經典的手工製作的.ini文件來存儲這些首選項。但它似乎難以維繫。
  • 包含GUI的整個類的序列化/反序列化。不知道如果這是可能的。

任何想法?我該怎麼辦?

在此先感謝。

補充:

我沒有做一個Eclipse RCP的項目,它只是一個正常 SWT應用程序。

更多: 我已經嘗試了系列化,但SWT小部件不支持它,讓我找到了唯一的選擇是創建另一個類,說配置,將其標記爲可序列化和持有有我的小工具的價值。幾乎就像使用java.util.prefs.Preferences一樣,但不那麼簡單。

我還在等待看看是否有另一種方式來做到這一點,也許有一些綁定涉及。

+0

我已經被告知有可能序列Swing組件。也許你可以試試SWT。 – zneak 2010-07-22 16:45:59

+0

我無法使其工作,所有swt小部件不支持序列化。 – 2010-07-24 14:36:40

回答

3

看看Memento設計模式。

Eclipse RCP的已經重用這個原則,你可以參考下面的接口以獲取更多信息:

org.eclipse.ui.IMemento 
+0

謝謝,但我剛剛找到java.util.prefs.Preferences類,我認爲比你的建議更好,我必須手動進行綁定。 – 2010-07-25 22:15:39

相關問題