Rom*_*dgz 1 java swing jtable tooltip tablemodel
我有一个函数触发:
public void tableChanged(TableModelEvent e){...}
Run Code Online (Sandbox Code Playgroud)
我从 TableModelEvent 得到了 TableModel :
TableModel model = (TableModel)e.getSource();
Run Code Online (Sandbox Code Playgroud)
但是我需要 JTable 才能在 TablecellBalloonTip 构造器中使用它。如何从 TableModel 中获取 JTable?
你不能直接从事件中得到它。您将侦听器安装到模型,而不是表本身。该模型没有对表的引用。实际上,同一个模型可能会被多个表重复使用。因此,您必须将对该表的引用存储在其他地方。如果你只有一张桌子,那么这应该有效:
final JTable table = new JTable();
table.getModel().addTableModelListener(new TableModelListener() {
@Override
public void tableChanged(TableModelEvent e) {
table.doSomething();
}
});
Run Code Online (Sandbox Code Playgroud)
否则,如果您有多个表,您可以像上面一样简单地为每个表创建一个单独的侦听器。
归档时间: |
|
查看次数: |
5276 次 |
最近记录: |