我正在尝试使用setInput()
方法定期更新JFace TreeViwer的输入。
viewer.setExpandedElements(expandedElements);
viewer.setExpandedTreePaths(expandedTreePaths);
保存树状态的方法。但在每次setInput()
调用后,TreeViewer都会闪烁。如何避免闪烁?
答案 0 :(得分:3)
实际输入是否在变化?如果不是,您可以调用refresh()
代替...或理想情况下使用TreeViewers添加/删除/更新方法,以避免重建整个树。
您可以在致电viewer.getTree().setRedraw(false)
之前致电setExpand
,然后再致电viewer.getTree().setRedraw(true)
。