Java 如何启用/禁用AbstractTableModel的调用tableChanged(TableModelEvent e)方法

Java 如何启用/禁用AbstractTableModel的调用tableChanged(TableModelEvent e)方法,java,swing,jtable,tablemodel,abstracttablemodel,Java,Swing,Jtable,Tablemodel,Abstracttablemodel,每当数据从CSV文件加载到表中时,就会调用TableModelListener的方法tableChanged(TableModelEvent e)。我不想发生这种事 我希望仅当添加表行或手动更新某些单元格数据时,才调用TableModelListener的tableChanged(TableModelEvent e) 有人能告诉我如何做到这一点吗 提前谢谢 一种方法是创建一个新的TableModel,没有JTable在监听它。使用setModel()更新表格,这将生成一个TableModelEv

每当数据从CSV文件加载到表中时,就会调用
TableModelListener
的方法
tableChanged(TableModelEvent e)
。我不想发生这种事

我希望仅当添加表行或手动更新某些单元格数据时,才调用
TableModelListener
tableChanged(TableModelEvent e)

有人能告诉我如何做到这一点吗


提前谢谢

一种方法是创建一个新的
TableModel
,没有
JTable
在监听它。使用
setModel()
更新表格,这将生成一个
TableModelEvent
。可以看到一个最小的完整示例


或者,删除并恢复有问题的
TableModelListener

一种方法是创建一个新的
TableModel
,而没有
JTable
正在侦听它。使用
setModel()
更新表格,这将生成一个
TableModelEvent
。可以看到一个最小的完整示例

或者,删除并恢复有问题的
TableModelListener

必须通知侦听器,您不能也不能禁用该调用。方法是一个侦听器实现,它足够智能,能够检测何时/是否应该对通知执行任何操作。在你的模型中,你做一些不太理想的事情,考虑发布一个SSCCE来演示你想要达到的目的,并解释为什么你想让听众必须被通知,你不能也不能禁用那个调用。方法是一个侦听器实现,它足够智能,能够检测何时/是否应该对通知执行任何操作。在你的模型中,你正在做一些不太理想的事情,考虑发布一个SSCCE来展示你想要达到的目标并解释你为什么想要它。