JFace TreeViewer мерцает
Вопрос
Я пытаюсь периодически обновлять ввод JFace TreeViwer, используя setInput()
метод.Также я использую
viewer.setExpandedElements(expandedElements);
viewer.setExpandedTreePaths(expandedTreePaths);
методы сохранения состояния дерева.Но после каждого setInput()
вызвать мерцание TreeViewer.Как избежать мерцания?
Решение
Изменяется ли фактический ввод?Если нет, то можешь позвонить refresh()
вместо...или в идеале используйте методы добавления/удаления/обновления TreeViewers, чтобы избежать необходимости перестраивать все дерево.
Вы можете попробовать позвонить viewer.getTree().setRedraw(false)
перед звонками в setExpand
, а потом viewer.getTree().setRedraw(true)
после.
Не связан с StackOverflow