扩展和减少TreeItem,在GWT中选择其他TreeItem

问题描述:

我正在使用GWT, 我有树Widget.TreeItems是在运行时添加的。 例如:扩展和减少TreeItem,在GWT中选择其他TreeItem

1.A 
    2.B 

当我在一个 单击它看起来像

1.A 
     1.ab 
     2.cd 
    2.B 

当我点击第B 它看起来像

1.A 
     1.ab 
     2.ad 
    2.B. 
     1.bz 
     2.by 

我想是什么样子,当我点击在B上,所有的TreeItem都应该减少。 like:

 1.A 
    2.B. 
     1.bz 
     2.by 

我很困惑如何做到这一点。

我正在使用SelectionHandler来展开treeItem。

有人可以帮助我理解和如何做到这一点。 也是这样做的关键字。

编辑:更多信息

这A和B是同一棵树的TreeItems并在运行时addded。

public void onSelection(SelectionEvent<TreeItem> event) { 
// the item which is selected send some keyword to server and server returns the child of the treeItem 
} 

+0

你为什么不只是遍历所有其他顶层项目沿途倒塌呢? – milan 2012-01-16 15:49:15

你可以在B的选择处理程序中使用closeAll()(Tree类方法),它将关闭树的所有节点,并在使用openAll(TreeNode节点)(Tree类方法)打开B和所有节点根据B. 要直接访问TreeGrid下的树,请使用方法yourTreeGrid.getTree(),因此它将成为例如`yourTreeGrdi.getTree()。​​closall()。

问候 阿兰