在JTable中刷新(重绘)一行的惯用方法(如果有的话)是什么?

时间:2014-06-25 13:29:49

标签: java swing jtable

我有JTable的实例,他们会监听一些远程事件,并且根据事件的类型,我想锁定/解锁一个模型索引为N的行。通过锁定一行我的意思是设置所有单元格的可编辑标志为false。这是由我的桌面模型处理的。

目前,我正在调用repaint(),因为我不希望我的表模型启动更新的事件,这是另一种选择,但我有一个复杂的逻辑当连续的实际数据发生变化,并且不想触发该逻辑时,就会发生这种情况。

还有其他办法吗?

1 个答案:

答案 0 :(得分:0)

应直接对TableModel进行更改。然后,TableModel将调用相应的fireXXX()方法,该表将自动重新绘制受影响的行。

由于听起来这个“可编辑标志”在表格中不可见,因此没有理由重新绘制表格,因此您可以覆盖TableModel,以便在更改此标志时不生成任何事件。