swing快速入门(四十二)JTree的基本创建

2024-01-09 09:32:54

注释很详细,直接上代码

新增内容
🔦JTree的创建
🔦设置节点之间的连线
🔦设置节点之间的水平分割线
🔦设置根节点的展开折叠图标
🔦设置是否隐藏根节点
package swing31_40;

import javax.swing.*;
import javax.swing.tree.DefaultMutableTreeNode;

public class swing_test_40 {
    JFrame jFrame = new JFrame("简单树");
    JTree tree;
    DefaultMutableTreeNode root;
    DefaultMutableTreeNode guangdong;
    DefaultMutableTreeNode guangxi;
    DefaultMutableTreeNode foshan;
    DefaultMutableTreeNode shantou;
    DefaultMutableTreeNode guilin;
    DefaultMutableTreeNode nanning;

    public void init(){
        //依次创建所有结点
        root = new DefaultMutableTreeNode("中国");
        guangdong = new DefaultMutableTreeNode("广东");
        guangxi = new DefaultMutableTreeNode("广西");
        foshan = new DefaultMutableTreeNode("佛山");
        shantou = new DefaultMutableTreeNode("汕头");
        guilin = new DefaultMutableTreeNode("桂林");
        nanning = new DefaultMutableTreeNode("南宁");


        //通过add()方法建立父子层级关系
        guangdong.add(foshan);
        guangdong.add(shantou);
        guangxi.add(guilin);
        guangxi.add(nanning);
        root.add(guangdong);
        root.add(guangxi);

        //依据根结点,创建JTree
        tree = new JTree(root);

        //设置结点之间没有连接线
        //tree.putClientProperty( "JTree.lineStyle", "None");

        //设置结点之间有水平分割线
        //tree.putClientProperty("JTree.lineStyle" , "Horizontal");

        //设置根结点有"展开、折叠"图标
        //tree.setShowsRootHandles(true);

        //隐藏根结点
        //tree.setRootVisible(false);

        //设置滚动
        jFrame.add(new JScrollPane(tree));
        
        jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//关闭窗口
        jFrame.pack();//自动调整窗口大小
        jFrame.setVisible(true);//显示窗口

    }

    public static void main(String[] args) {
        //启动程序
        new swing_test_40().init();
    }
}

演示效果:
(图片为默认的样式,其他效果已注释,需要取消注释即可)

在这里插入图片描述

文章来源:https://blog.csdn.net/m0_73756108/article/details/135450967
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。