加载数据后即可进行宽松选择

时间:2018-04-10 11:35:45

标签: java swt nattable

我在我的应用程序中使用Nattable几乎所有表格。现在,用户报告了有关Nattable中选择的问题。

当我的应用程序加载数据时,显示数据,当用户在数据加载后选择一个项目时,它将删除选择。当用户等待几秒钟并再次进行选择时,它会保持不变。

这是Nattable的已知行为吗?对我来说,看起来第一次选择时数据仍在加载。数据加载是带有多个单元贴标机的11K项目。

1 个答案:

答案 0 :(得分:1)

没有看到细节,很难说清楚。实际上我想知道在数据仍然加载时如何呈现某些内容。但我想你有一些有趣的延迟加载机制,可以快速访问表。

根据我的经验,您描述的行为是因为StructuralChangeEvent而发生的。数据完全加载后,会触发此事件以相应地更新所有图层。结构更改用于完全清除,这也意味着在使用默认SelectionModel时进行选择。该模型中的选择由行索引存储。但是,由于结构变化意味着可能已经改变,因此删除了选择以避免选择之前未选择的内容。

要么使用RowSelectionModelPreserveSelectionModel之类的扩展选择模型,要么在StructuralChangeEvent被解雇时仔细检查,以及是否可以处理。{p>但我认为关于数据加载机制,替代选择模型应该更有趣。