2016-11-04 2 views

답변

4

방금 ​​SWT Tree을 사용하는 경우 트리의 모든 항목을 반복하고 각 항목을 확장/축소해야합니다. 예를 들면 :

boolean expanded = true to expand, false to collapse 

Tree tree = ... your tree 

tree.setRedraw(false); // Stop redraw until operation complete 

TreeItem [] items = tree.getItems(); 

for (TreeItem item : items) { 
    item.setExpanded(expanded); 
} 

tree.setRedraw(true); 

는 JFace는 TreeViewer 전화 뷰어 collapseAll 또는 expandAll 방법을 사용하는 경우.

+1

JFace TreeViewer를 사용하는 경우 확장시 [마우스 포인터가 깜박 거리는 버그가 있음] (https://bugs.eclipse.org/bugs/show_bug.cgi?id=502841)에 유의하십시오. 큰 나무. 해결 방법은'BusyIndicator :: showWhile()'에 전달 된 실행 파일에서'expandAll()'을 호출하는 것입니다. –

+0

작업이 완료 될 때까지 왜 redrwaw를 중지해야합니까? – Professor901

+1

@ Professor901 개개인이 개별적으로 그려지는 것을 멈추게하고, 상황을 늦추고 깜박 거리게 만듭니다. –