gpt4 book ai didi

java - 仅更新 JFace TreeViewer 中的可见项

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:17:51 31 4
gpt4 key购买 nike

我实现了一个在 TreeViewer 中显示数据的 Eclipse 插件。

树结构在初始化时读取,在运行时不会改变。LabelProvider 用于设置要为每个项目显示的数据。该对象通过读取我们的硬件来完成此操作。读取一个值可能会占用一些时间(~0.5 秒)。每次调试器暂停和每次用户单击指定的“刷新”按钮时都会更新值。

我有很多项和子项,因此一次读取所有值太耗时了。因此,我只想读取用户可见的项目的数据。

我尝试使用 ILazyTreeContentProvider 但这只会在加载树时节省时间:滚动或展开 TreeItem 后,可见项目被添加到要更新的项目列表而不是替换不可见的节点。

我怎样才能做到这一点?

最佳答案

找到了!

我仍在使用 ILazyTreeContentProvider。每次调试器停止或单击刷新按钮时,我不会检查要刷新哪个元素,而是使用 tree.clearAll(true) 简单地删除所有元素。删除操作将调用 ILazyTreeContentProvider 仅在可见项目上再次完成其工作。

关于java - 仅更新 JFace TreeViewer 中的可见项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4647319/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com