我第一次使用NatTable。我已经创建了一个很好的表,包括排序,过滤,......但是现在我正在寻找一种方法来实现一个更改侦听器,每次表中的数据被更改时都会调用它。此事件还需要给我改变模型。
有没有办法创建这种行为?
答案 0 :(得分:1)
因为NatTable基本上只是"只有"作为数据模型的查看器,我通常会建议在模型对象上引入某种PropertyChangeListener。原因是数据可以通过NatTable或数据模型本身通过后台任务进行更改。最后,答案将取决于您的使用案例。
如果您只想以特殊方式跟踪NatTable中的更改,您可以实现并注册一个自定义UpdateDataCommandHandler
,用您需要的信息触发事件。在NatTable本身,我们目前不会发起此类事件。如果是数据更新,我们只会触发CellVisualChangeEvent
来触发重新绘制。
有关如何交换数据更新行为的基本说明,请参见本页底部:https://www.eclipse.org/nattable/documentation.php?page=editing
最后,您需要检查UpdateDataCommandHandler
的实现,基本上执行相同的操作来更新数据模型,并另外触发符合您预期的事件。