我对Java很陌生,并且一直在使用jTable开发GUI。
我有一个要跟踪更改的jTable
,因此我在TableModelListener
的后面添加了TableModel
。
但是,我不想跟踪该表中的某些更改,因此我需要以某种方式打开和关闭TableModelListener
。
我如何知道该模型中是否已经有一个侦听器?
if (/* is there an event listener for the TableModel*/){
listVersions.getModel().removeTableModelListener(checkBoxListener);
}
functionModifyingTable();
listVersions.getModel().addTableModelListener(checkBoxListener);
我的目的是防止mycode关闭甚至不存在的侦听器。
最佳答案
将表模型转换为AbstractTableModel
并使用getTableModelListeners()
。
((AbstractTableModel) listVersions.getModel()).getTableModelListeners();