我正在处理这个swing GUI,当我试图向DefaultTableModel
添加一行,然后将JTables
模型设置为DefaultTableModel
时,我的程序遇到了一个问题。 我有两列都启用了可编辑功能,这两列还包含对象值。 我的代码中没有任何内容指示删除所有列。
这是我的代码:它没有出现错误。
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
outputModel = new DefaultTableModel();
outputModel.addRow(new Object[]{"hello","goodbye"});
output.setModel(outputModel);
System.out.println(output.getColumnCount());
System.out.println(output.getRowCount());
}
输出为:
0
1
两列都被删除,只生成一行。 我使用的是Netbeans 11.2
outputModel = new DefaultTableModel();
outputModel.addRow(new Object[]{"hello","goodbye"});
output.setModel(outputModel);
不要一直创建新的DefaultTableModel并重置模型。 您需要将该行添加到现有的表模型中。
所以代码应该是这样的:
DefaultTableModel model = (DefaultTableModel)output.getModel();
model.addRow(new Object[]{"hello","goodbye"});