Nattable - 刷新基础数据

时间:2015-10-01 15:18:27

标签: java swt eclipse-rcp nebula nattable

我们希望将一些JFace TableViewers更改为NatTable。 TableViewer有一个方便的方法来更改数据源:

tableViewer.setInput(source)

我们在查询数据库时使用此方法传递新的List。 NatTable中是否有类似的内容?

2 个答案:

答案 0 :(得分:0)

AFAIK,在NatTable中,您使用IDataProvider的实现。对于List案例,您可以使用ListDataProvider

vogella.com上有关于NatTable的教程,a section on data provision为您提供了如何将List模型与NatTable一起使用的示例。这是一个很好的起点。 NatTable有一个相当复杂的API,我不想重复文档。

答案 1 :(得分:0)

NatTable可视化List中包含的数据。要交换NatTable中显示的数据,通常使用可在运行时修改的List实例为数据访问创建ListDataProvider。

您通常会通过以下方式交换数据:

  • 为NatTable创建一个列表 - > natList
  • 从数据库加载数据 - > DBLIST
  • natList.clear()
  • natList.addAll(DBLIST)

根据您是否使用GlazedLists,您需要在操作完成后刷新NatTable。

如果您正在使用GlazedLists和GlazedListsEventLayer,则需要在更新数据列表内容之前通过停用GlazedListsEventLayer来考虑批量更新,以避免不必要的事件触发。