0

我有一个带有 AbstractTableModel MyModel 的表名 jTable;我可以成功地将抽象模型实现到 jTable。当我使用 Sql Query 更新数据库时,按表单中的 UPDATE 按钮,我使用重新填充 jTablejTable.setModel(new MyModel())并且它工作正常。

但我认为这不是明智的做法,因为它会出现大量行。每次更新或将记录插入数据库后,然后将表模型重新设置或重新填充到 jTable 都不是有效的过程。我读到了一些 fireTableRowUpdated 的听众……但我不明白它应该怎么写?因为我没有先更新jTable。我正在更新数据库,然后我需要更新当前的 AbstractTableModel 以及我的 jTable。

有没有人可以引导我找到正确的路径。我如何设置监听器或调用方法,因此 AbstractTableModel 也将更新和更新 jTable。而且我认为它不应该重新填充数据库表中的所有行。

4

1 回答 1

1

感谢所有发表评论的人。我终于可以想出答案了。我在 AbstractTableModel 中创建了方法:

myObject rec = new myObject();

public void updateRow(Object value, int row){
        rec.set(row, value);
        fireTableRowsUpdated(row, row);
    }

and in main class

mymodel.updateRow(newvalueObject, rowindex);

它有效。谢谢你指导我...

于 2013-07-22T11:49:34.453 回答