`
yanyanquan
  • 浏览: 452824 次
  • 性别: Icon_minigender_1
  • 来自: 江门
社区版块
存档分类
最新评论

jtree 默认展开树的全部节点

UP 
阅读更多

    public static void expandTree(JTree tree) {
        TreeNode root = (TreeNode) tree.getModel().getRoot();
        expandAll(tree, new TreePath(root), true);
    }

  
    private static void expandAll(JTree tree, TreePath parent, boolean expand) {
        // Traverse children
        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);
            }
        }

        // Expansion or collapse must be done bottom-up
        if (expand) {
            tree.expandPath(parent);
        } else {
            tree.collapsePath(parent);
        }
    }
分享到:
评论

相关推荐

    jtree节点可编辑

    我们可以注册`TreeWillExpandListener`来监听树节点的展开和折叠,以及`TreeSelectionListener`来监听节点的选择变化。此外,`TreeCellEditor`会触发`EditingStopped`事件,我们可以在事件处理器中处理编辑后的结果...

    JTree2.0 目录树

    - **DefaultMutableTreeNode**:Swing提供了一个默认实现`DefaultMutableTreeNode`,支持添加、删除和修改节点操作。 - **TreeModel**:`javax.swing.tree.TreeModel`接口定义了树数据的模型,负责管理节点数据和...

    Swing-JTree.rar_jtree_jtree Demo_swing 树

    5. **显示和操作**:JTree的默认行为是单击节点选中,双击节点展开或折叠。这些行为可以通过设置JTree的`setExpandsSelectedPaths`、`setShowsRootHandles`等方法来改变。 6. **树遍历**:可以使用`...

    JTree 树形菜单插件包.rar

    JTree 树形菜单插件包下载,在网页上快速实现树控菜单的一个小插件,功能相对完善,本次更新功能:加入treeNodes(数组形式),通过treeNodes可以对指定的子树进行收缩和展开功能,查找指定节点的功能。加入这个功能...

    jtree树应用

    JTree提供了许多内置方法来操作树,如`expandPath()`, `collapsePath()`, `isExpanded()`, `isLeaf()`等,用于控制节点的展开、折叠状态,检查是否为叶节点等。 **7. 样式和图标** JTree可以配置不同的图标来表示...

    JTree控件的使用

    `JTree`提供了事件监听机制,例如`TreeExpansionListener`监听树的展开和折叠事件。当节点展开或折叠时,会触发`treeExpanded`和`treeCollapsed`方法,使得开发者能够响应这些变化。`DefaultMutableTreeNode`是`...

    JTree用法大全 swing java

    * @param parent 父节点 *@param expand 为true则表示展开树, 否则为关闭整棵树 */ private static void expandAll(JTree tree, TreePath parent, boolean expand) { // Traverse children TreeNode node = ...

    JTree

    `DefaultMutableTreeNode` 是 `JTree` 的默认节点类型,它支持子节点的添加和移除。你可以自定义节点类来携带额外的信息或行为。 3. **监听器(Listener)**:`JTree` 支持多种类型的监听器,如 `...

    JTree的Doc文档

    6. **Icons**:可以通过设置图标来美化`JTree`,例如,可以为展开的节点、未展开的节点、叶子节点设置不同的图标。 7. **Rendering**:`JTree`使用`TreeCellRenderer`来决定如何显示每个节点,包括文本颜色、字体、...

    java中JTree的简单应用

    JTree可以通过两种方式创建:一种是通过默认的树模型,另一种是通过自定义的TreeModel。默认的树模型通常使用DefaultMutableTreeNode类,而自定义的TreeModel则允许开发者更灵活地控制树的结构和行为。 1. **创建...

    java组件之jtree使用

    - **扩展节点**:可以使用`expandPath`方法来展开特定的路径或节点。 - **折叠节点**:与扩展节点相对应的是`collapsePath`方法,用于折叠特定的路径或节点。 - **改变节点图标**:`JTree`允许用户自定义节点的图标...

    详细介绍JTree控件的教程以及源码

    // 自定义未展开节点的图标 setIcon(closeIcon); } return c; } }); ``` 5. **IBM Tree** 在提供的压缩包文件"IBM Tree"中,可能包含了IBM对JTree控件的特定实现或扩展。IBM作为一个知名的软件公司,其在...

    JAVA中的Swing的JTree操作的宝典

    本篇“JAVA中的Swing的JTree操作的宝典”将深入探讨如何进行树节点的增加、删除、修改和查询操作,帮助开发者更好地掌握JTree的高级用法。 1. **创建JTree** 创建JTree时,通常需要一个DefaultTreeModel或者自定义...

    treea.rar_jtree_tree java

    6. **默认行为**: `JTree` 有预定义的键盘快捷键和鼠标操作,比如使用空格键选择节点,使用左右箭头展开或折叠节点。 7. **自定义渲染**: 通过实现 `TreeCellRenderer`,你可以定制节点的显示方式,包括字体、颜色...

    IconNode.zip_jtree_zip

    而`IconNode`很可能是一个扩展了JTree默认节点类(如`DefaultMutableTreeNode`)的自定义类,增加了图标显示的支持。这样做可以使得树结构的视觉效果更佳,帮助用户更容易识别和理解各个节点的含义。 `IconNode....

    swing界面设计之JTree

    - **关于JTree的展开**:控制树节点的展开与折叠,包括默认展开所有节点等操作。 - **如何遍历JTree**:使用递归算法或`Enumeration`接口遍历树中的每个节点。 #### (四) JTree的使用方法 **JTreeDemo.java源程序*...

    javaJTree编程(源代码)

    默认情况下,JTree会根据TreeNode的子节点数量自动生成展开/折叠的图标。 在JTreeDemo源代码中,首先需要导入必要的Swing库: ```java import javax.swing.JFrame; import javax.swing.JTree; import javax.swing....

    树菜单

    - 节点图标:JTree允许为不同的节点类型设置不同的图标,例如展开节点和折叠节点的图标。 3. **交互行为** - 节点操作:你可以添加、删除、重命名树节点。JTree会自动处理这些操作的视觉更新。 - 扩展和折叠:...

Global site tag (gtag.js) - Google Analytics