Chinaunix首页 | 论坛 | 博客
  • 博客访问: 328392
  • 博文数量: 47
  • 博客积分: 2667
  • 博客等级: 少校
  • 技术积分: 480
  • 用 户 组: 普通用户
  • 注册时间: 2010-02-10 11:25
文章分类

全部博文(47)

文章存档

2015年(2)

2012年(4)

2011年(4)

2010年(37)

我的朋友

分类: Java

2010-11-08 11:08:24

java Swing JTree之 展开 关闭
 
/**
     * 展开一棵树
     * @param tree
     */
    private void expandTree(JTree tree) {
        // 根节点

        TreeNode node = (TreeNode) tree.getModel().getRoot();
        expandAll(tree, new TreePath(node), false);
    }

    /**
     * 完全展开一棵树或关闭一棵树
     * @param tree JTree
     * @param parent 父节点
     * @param expand true 表示展开,false 表示关闭
     */
    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);
        }
    }

阅读(6025) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~