调用 setComparator() 时,Jface TableViewer 是否需要时间来加载?

问题描述 投票:0回答:2

我有一个

TableViewer
,表格中有 15 列。我已经实现了自己的内容和标签提供商。我需要对所有这些列进行排序,因此在表查看器上为所有列调用
setComparator()
。每次调用此
setComparator()
时,都会调用内容提供者的
getElements()
,从而导致表加载延迟。

我该如何解决这个问题?

java swt jface
2个回答
0
投票

如果

getElements()
实际上导致延迟,因为它执行了昂贵的操作(例如从数据库中获取数据),那么您可以缓冲或缓存获取的数据,而不是在每次调用时重新检索它。

如果排序是固定的(即用户无法更改),您可以从

getElements()
返回预先排序的元素,而不是调用
setComparator()


0
投票

考虑使用 Eclipse Nattable?

© www.soinside.com 2019 - 2024. All rights reserved.