向 JTable 添加行时,我的所有列都消失了

When adding a row to a JTable all of my columns disappear

我正在开发这个 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 并重置模型。您需要将行添加到现有的 TableModel。

所以代码应该是这样的:

DefaultTableModel model = (DefaultTableModel)output.getModel();
model.addRow(new Object[]{"hello","goodbye"});