2016-06-24 14 views
0

Обновление на дереве с элементами jface имеет проблемы с краской. То, что я пытаюсь обновить, когда новый элемент будет добавлен.Обновление на дереве с элементами jface имеет проблемы с краской

treeviewer.refresh (пункт), что элемент имеет много дочерних элементов (много) enter image description here

В конечном счете это освежает, но где-то после спустя 7-10 секунд. Как подойти к отладке этой проблемы с краской?

+0

SWT/JFace деревья имеют проблемы с производительностью очень большими деревьями. Использование SWT.VIRTUAL и ILAZyTreeContentProvider может помочь. –

+1

много способов сколько? Просто хотелось узнать. – SomeDude

+0

примерно около 100 предметов – user1328572

ответ

0

Если вы используете treeViewer.refresh(item, false);, тогда вы должны иметь лучшую производительность. Только ярлыки новых предметов будут проверяться и обновляться, а не все ярлыки для детей.

http://help.eclipse.org/mars/topic/org.eclipse.platform.doc.isv/reference/api/org/eclipse/jface/viewers/StructuredViewer.html#refresh-java.lang.Object-boolean-

+0

Я оптимизировал (операции с строкой при извлечении ярлыков) некоторый код, относящийся к отображению детских меток. Также мне пришлось создавать новый набор объектов при столкновении с одинаковыми объектами. – user1328572