JTable和DefautlTableModel没有刷新

时间:2013-11-15 10:05:16

标签: java swing jtable defaulttablemodel

MyTableModel扩展了DefaultTableModel,一切看起来都正常。

我有一个可编辑的列,正在调用setValueAt(),并且数据库已更新。

然而桌子本身没有刷新?

我覆盖,getColumName()getRowCount()isCellEditable()getColumClass()setValueAt() - 它们被调用,并触发数据库更新。该模型由列表支持,该列表在setValueAt()中更新。

模型仅由myTable.setModel(myTableModel);

设置

3 个答案:

答案 0 :(得分:3)

您是否在代码中致电super.setValueAt()

看起来您的更改会跳过触发的事件。

答案 1 :(得分:1)

setValueAt()方法结束时致电fireTableCellUpdated()。它必须帮助你。

答案 2 :(得分:0)

也许您需要刷新TableModel的缓存。 为了做到这一点,你可以覆盖fireTableDataChanged()并在覆盖结束时调用super方法。