0
我設計的JTable這樣的:JTable的頭突然改變其列名
當我編譯我的Java GUI Netbeans的程序,它有沒有問題:
但是當我按了一個JButton,我用這個代碼上傳了excel:
private void b_browseActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
int column, row;
JFileChooser chooser = new JFileChooser();
chooser.showOpenDialog(this);
File file = chooser.getSelectedFile();
chooser.setFileFilter(new FileNameExtensionFilter("Excel File", "xls"));
String al = file.getAbsolutePath();
File excelFile = new File(al);
if(!file.getName().endsWith("xls")){
JOptionPane.showMessageDialog(null,
"Pilih file Excel (.xls) saja!",
"Error",JOptionPane.ERROR_MESSAGE);
}
else
{
if (excelFile.exists()) {
try {
Workbook workbook = Workbook.getWorkbook(excelFile);
Sheet sheet = workbook.getSheets()[0];
TableModel model = new DefaultTableModel(sheet.getRows(), sheet.getColumns());
DefaultTableModel model2 = new DefaultTableModel(null, JdlTabel);
for (row = 0; row < sheet.getRows(); row++) {
for (column = 0; column < sheet.getColumns(); column++) {
String content = sheet.getCell(column, row).getContents();
model.setValueAt(content, row, column);
data[row][column]=Double.parseDouble(content);
n_data = sheet.getRows();
k_data = sheet.getColumns();
}
}
j_latih.setModel(model2);
j_latih.setModel(model); //input data to Jtable
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "Error : " + e);
e.printStackTrace();
}
} else {
JOptionPane.showMessageDialog(null, "There is no data!"); }
}
cek_kmeans=0;
cek_data=1;//control tombol
}
突然表格列名稱變更如下:
那麼,什麼是錯的?我該如何解決?
但問題是,當我上傳要顯示的Excel文件時,jtable列的名稱發生了變化。 –
@YohanesSetiawan,該表獲取TableModel的列名稱。每當你設置一個新模型時,你都會得到新的列名。當你使用「null」作爲列名時,你希望發生什麼? – camickr