0
我有一个JTable中这样定义:如何使用DbUtils.resultSetToTableModel填充数据后向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
直到这里,它用于正常工作。正如你可以看到这个表被定义为公共,因为有时我需要用这种方式从其他的JFrame填满它:
takeOrder to = new takeOrder();
//Get data from DB to resultSet
to.table_1.setModel(DbUtils.resultSetToTableModel(resultSet));
如果我填了表,这种方式并尝试添加或删除我的model_3
,不起作用!任何建议,如何在使用DbUtils.resultSetToTableModel(resultSet)
后添加或删除表格将不胜感激。
想想这个,'model_3'与'JTable#getModel'有什么关系?一旦你调用了'setModel',你改变了表格用于'TableModel'的对象的引用,它不再指向'model_3' ... – MadProgrammer 2015-04-01 06:09:29
@MadProgrammer你是对的。但无论如何,在将模型设置为DbUtils.resultSetToTableModel(resultSet)之后,向表中添加或删除行? – Bernard 2015-04-01 06:11:31
它将取决于'DbUtils'的'TableModel'的类型。由于我没有该API的JavaDocs,所以我不能说 – MadProgrammer 2015-04-01 06:14:22