我正在開發有助於解決財務簿問題的教程軟件。所以它就像一個包含組合框和格式化文本框的工作表類。除了一件事以外,一切都按照我的意願工作。有沒有辦法讓我在任何時間點完成我的工作?使用Netbeans的Java桌面應用程序
舉例具體說明。有十二章,每章包含15-20個問題。每個問題都是用文本框和組合框以及一些jtabbed面板等組合設計的。如果我解決了一半工作表並想保存以便以後可以打開它,則可以打開我的軟件。有沒有辦法做到這一點。問題是每張紙都有不同的組合框和文本框,所以變量也不同。
在此先感謝
我正在開發有助於解決財務簿問題的教程軟件。所以它就像一個包含組合框和格式化文本框的工作表類。除了一件事以外,一切都按照我的意願工作。有沒有辦法讓我在任何時間點完成我的工作?使用Netbeans的Java桌面應用程序
舉例具體說明。有十二章,每章包含15-20個問題。每個問題都是用文本框和組合框以及一些jtabbed面板等組合設計的。如果我解決了一半工作表並想保存以便以後可以打開它,則可以打開我的軟件。有沒有辦法做到這一點。問題是每張紙都有不同的組合框和文本框,所以變量也不同。
在此先感謝
您需要一個工作表模型。這個模型是一個數據結構,並沒有(本身)與GUI部件用來表示它的事實。
保存模型的狀態 - 從簡單序列化開始 - 保存到磁盤。在啓動時加載。
沿着這些線路的東西可以統一處理您的工作表。
public interface PersistentModel {
boolean save (OutputStream out) throws IOException;
boolean load (InputStream out) throws IOException;
}
public interface SpreadSheet extends PersistentModel {
Worksheet[] getWorksheets();
Worksheet getWorksheet(int i); // and other related, etc.
}
public interface Worksheet extends PersistentModel {
int id();
Element get(String name):
Element[] getElements();
public interface Element<T> extends PersistentModel {
String getName();
T getValue();
boolean setValue(T v);
}
}
搖擺使用MVC,你必須掛鉤模型(工作表的數據結構保持狀態)的標準機制,並且,在GUI(可能擺動)是相同的呈現。我認爲這不是一個問題。
那麼你必須有那麼持久性存儲,以節省數據庫或文件存儲此桌面application.Think的狀態。 您也可以序列化「應用程序的狀態」。在一個對象中,並將其保存在磁盤上,當您再次啓動應用程序時,重新加載它。
如果這是一個NetBeans [Java桌面應用程序](http://stackoverflow.com/questions/2561480/netbeans-gui-editor-generating-its-own-incompreferencesible-code/2561540#2561540),請考慮添加'jsr296'標籤。 – trashgod