⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jtreedemo.java

📁 精通JBuilder2006 源代码 精通JBuilder2006 源代码
💻 JAVA
字号:
package chapter6.component;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.tree.*;

public class JTreeDemo extends JFrame {

    static int i = 0;
    DefaultMutableTreeNode root;
    DefaultMutableTreeNode child;
    DefaultMutableTreeNode chosen;
    JTree tree;
    DefaultTreeModel model;
    String[][] data = { {"体育", "足球", "篮球", "乒乓球"}, {"娱乐", "唱歌", "跳舞", "相声",
                      "小品"}, {"电视", "长虹", "海尔", "创维"}, {"戏剧", "京剧", "川剧", "越剧"},
                      {"国家", "中国", "越南", "朝鲜", "德国"}, {"武器", "飞机", "大炮", "坦克"},
    };

    JTreeDemo() {
        Container contentPane = this.getContentPane();
        JPanel jPanel1 = new JPanel(new BorderLayout());
        root = new DefaultMutableTreeNode("根");
        tree = new JTree(root);
        jPanel1.add(new JScrollPane(tree), BorderLayout.CENTER);
        model = (DefaultTreeModel) tree.getModel();
        JButton jButton1 = new JButton("添加结点");
        jButton1.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                if (i < data.length) {
                    child = new Branch(data[i++]).node();
                    chosen = (DefaultMutableTreeNode) tree.
                             getLastSelectedPathComponent();
                    if (chosen == null) {
                        chosen = root;
                    }

                    model.insertNodeInto(child, chosen, 0);
                }
            }
        });
        jButton1.setBackground(Color.blue);
        jButton1.setForeground(Color.white);
        JPanel jPanel2 = new JPanel();
        jPanel2.add(jButton1);
        jPanel1.add(jPanel2, BorderLayout.SOUTH);
        contentPane.add(jPanel1);
        this.setTitle("JTreeDemo");
        this.setSize(300, 500);
        this.setLocation(400, 400);
        this.setVisible(true);
    }

    class Branch {
        DefaultMutableTreeNode r;
        public Branch(String[] data) {
            r = new DefaultMutableTreeNode(data[0]);
            for (int i = 1; i < data.length; i++) {
                r.add(new DefaultMutableTreeNode(data[i]));
            }
        }

        public DefaultMutableTreeNode node() {
            return r;
        }
    }

    public static void main(String args[]) {
        JTreeDemo test = new JTreeDemo();
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -