JTree的展开和收起操作  

JTree的展开操作,经常用经常忘,经常有人问.快贴一个在这里吧.

其实只要是展开节点,方法是

tree.expandPath
简单易用,TreePath随时可以用TreeNode中得到,下面是一个递归全展或者全收的方法.
private void expandAll(JTree tree, TreePath parent, boolean expand) {    
     TreeNode node = (TreeNode) parent.getLastPathComponent();    
         if (node.getChildCount() > 0) {   
              for (Enumeration e = node.children(); e.hasMoreElements();) {    
                    TreeNode n = (TreeNode) e.nextElement();    
                     TreePath path = parent.pathByAddingChild(n);    
                      expandAll(tree, path, expand);    
                }    
          }    
      if (expand) {    
         tree.expandPath(parent);    
      } else {    
          tree.collapsePath(parent);    
     }    
} 

还有就是,如果要隐藏根节点,只需要setRootVisibile(boolean)即可.似乎是这么写来的,我的记忆力一向很模糊.

请订阅本站 RSS feed 订阅到信箱 ,欢迎 Donate 或者 上面的广告内容 支持三十岁

本文链接:JTree的展开和收起操作

转载声明:本站文章若无特别说明,皆为原创,转载请注明来源:三十岁,谢谢!^^


分享到:          
评论关闭