Java SWT树全部展开/全部折叠

时间:2016-11-04 07:37:32

标签: java tree swt

如何为自己的SWT树创建全部展开和全部折叠功能,类似于Eclipse的Package Explorer中的“全部折叠”按钮?

1 个答案:

答案 0 :(得分: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,请调用查看器collapseAllexpandAll方法。