如何將數組值加載到JTable
中,以便無論何時打開表單,它都會顯示錶的以前的值?我不想將表單連接到任何數據庫。如何將值加載到JTable中,以便在表單打開時顯示以前的值?
這是我的代碼到目前爲止,它允許我輸入文本到文本字段,當我點擊「創建客戶」按鈕時,它將值存儲到JTable
。但是,如果我退出並重新打開表單,表中以前的數據就會消失。我已經做了一些研究,但似乎將netbeans連接到數據庫是保存和檢索數據的唯一方法。但是,我相信也可以將數據存儲到數組中,但是我不知道如何將數組中的值帶入表中。
我需要一些幫助。這是我的學校項目。 僅供參考,一些符號的我用:rbtn = radiobutton, tb = textfields, lbl = label
public class Customer extends javax.swing.JFrame {
String gender;
int year = Calendar.getInstance().get(Calendar.YEAR);
int month = Calendar.getInstance().get(Calendar.MONTH);
int day = Calendar.getInstance().get(Calendar.DAY_OF_MONTH);
int m=10; //array memory size
String[] name = new String[m];
String[] age = new String[m];
String[] genderm = new String [m];
String[] id = new String [m];
String[] mobile = new String [m];
String[] email = new String [m];
String[] address = new String [m];
String[] date = new String [m];
String[] photo = new String[m];
public Customer() {
initComponents();
tbdate.setText(day+"/"+(month+1)+"/"+year);
lblphoto.setIcon(null);
}
private void btncreateActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
if (rbtnmale.isSelected()){
gender = "Male";
}
else if (rbtnfemale.isSelected()){
gender = "Female";
}
DefaultTableModel model = (DefaultTableModel) jtablecustinfo.getModel();
model.addRow(new Object[]{tbname.getText(),tbage.getText(),gender,tbid.getText(),tbmobile.getText(),tbemail.getText(),tbaddress.getText(),tbdate.getText(),lblphoto.getIcon()});
for(int i=0;i<m;i++){
name[i]=tbname.getText();
age[i] = tbage.getText();
genderm[i]=gender;
id[i]=tbid.getText();
mobile[i]=tbmobile.getText();
email[i]=tbemail.getText();
address[i]=tbaddress.getText();
date[i]=tbdate.getText();
photo[i]= tbimage.getText();;
}
//Reset everything after creation
JOptionPane.showMessageDialog(null,"Successfully Created Customer");
tbname.setText("");
tbage.setText("");
tbid.setText("");
tbmobile.setText("");
tbemail.setText("");
tbaddress.setText("");
tbdate.setText("");
rbtnmale.setSelected(false);
rbtnfemale.setSelected(false);
tbdate.setText(day+"/"+(month+1)+"/"+year);
gender = "";
tbimage.setText("");
lblphoto.setText(" -Import photo-");
lblphoto.setIcon(null);
}
我已經包括了我的代碼的要點,希望它足以查看!
對於少量的數據,考慮'java.util.prefs.Preferences'。 – trashgod
@trashgod啊,你能給我提供一些關於如何使用它的例子嗎?對不起,我沒有在課堂上遇到過這個功能,我做了一些研究,我只知道它可以保存用戶的偏好,但是怎麼做? – Marcus
我已在下面詳細闡述。 – trashgod