1
EclipseのPackage ExplorerのCollapse Allボタンと同様に、自分自身のSWTツリーのExpand All機能とCollapse All機能をどのようにすることができますか?Java SWTツリーExpand All/Collapseすべて
EclipseのPackage ExplorerのCollapse Allボタンと同様に、自分自身のSWTツリーのExpand All機能とCollapse All機能をどのようにすることができますか?Java SWTツリーExpand All/Collapseすべて
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
メソッドを使用している場合。
JFace TreeViewerを使用している場合は、[マウスポインタがちらつく原因となるバグがあります](https://bugs.eclipse.org/bugs/show_bug.cgi?id=502841)に注意してください大きな木。回避策は、 'BusyIndicator :: showWhile()'に渡される実行可能ファイルから 'expandAll()'を呼び出すことです。 –
操作が完了するまで、なぜredrwawを停止する必要がありますか? – Professor901
@ Professor901個々に展開される展開を停止し、処理を遅くしたり、ちらつきを引き起こす可能性があります。 –