我有一个以这种方式定义的JTable:
public JTable table_1;
model_3 = new DefaultTableModel();
table_1 = new JTable(model_3);
scrollPane_5.setViewportView(table_1);
添加行:
model_3.addRow(new Object[]{table.getValueAt(row,0) , table.getValueAt(row,1) ,table.getValueAt(row,2) , commentFood });
删除行:
model_3.removeRow(row); //row is an integer
直到这里,它过去才能正常工作。正如您所看到的,此表被定义为public,因为有时我需要以这种方式从另一个JFrame中填充它:
takeOrder to = new takeOrder();
//Get data from DB to resultSet
to.table_1.setModel(DbUtils.resultSetToTableModel(resultSet));
如果我以这种方式填写表格并尝试添加或删除我的model_3
,则无效! 1}}使用DbUtils.resultSetToTableModel(resultSet)
后如何添加或删除表格的任何建议都将不胜感激。
答案 0 :(得分:0)
由于我无法在互联网上找到任何信息,我看到有几个人问了同样的问题而没有回答。我提出了这个解决方案:
if (formOut) {
for (int i = 0; i < table_1.getRowCount(); i++) {
model_3.addRow(new Object[]{table_1.getValueAt(i,0),
table_1.getValueAt(i, 1), table_1.getValueAt(i, 2)});
}
}
formOut = false;
table_1.setModel(model_3);
fromOut
是一个布尔值,用于检查我是否为我的表使用了另一个模型。如果是这样,我将表中的数据添加到以前的模型,然后我将该模型引用到我的表中。现在我也可以添加到该模型中。