myeclipse swing插件中的JTree可以修改么?

刚开始用swing,求解JTree的那个插件怎么修改或者从数据库导入数据呢?!!求解!!!虽然我用手打了一个,但是这个插件还是心里不舒服啊!!... 刚开始用swing,求解JTree的那个插件怎么修改或者从数据库导入数据呢?!!求解!!!虽然我用手打了一个,但是这个插件还是心里不舒服啊!! 展开
 我来答
zhaotao_king
2013-05-06 · TA获得超过2455个赞
知道大有可为答主
回答量:863
采纳率:0%
帮助的人:1188万
展开全部

你用的netbeans插件?

形成JTree完全可以使用数据库数据的!

给你个示例(摘至:blogjava)

import java.awt.Color;
import java.awt.Dimension;
import javax.swing.BoxLayout;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTree;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.DefaultTreeModel;
/*
 JTree的构造函数:
 JTree()
 JTree(Hashtable value)
 JTree(Object[] value)//只有这个构造函数可以创建多个根结点
 JTree(TreeModel newModel)
 JTree(TreeNode root)
 JTree(TreeNode root, boolean asksAllowsChildren)
 JTree(Vector value)
 */
public class JTreeDemo {
    public static void main(String[] args) {
        // 构造函数:JTree()
        JTree example1 = new JTree();
        // 构造函数:JTree(Object[] value)
        Object[] letters = {" a ", " b ", " c ", " d ", " e " };
        JTree example2 = new JTree(letters);
        // 构造函数:JTree(TreeNode root)(TreeNode空)
        // 用空结点创建树
        DefaultMutableTreeNode node1 = new DefaultMutableTreeNode(); // 定义树结点
        JTree example3 = new JTree(node1); // 用此树结点做参数调用 JTree的构造函数创建含有一个根结点的树
        // 构造函数:JTree(TreeNode root)(同上,只是TreeNode非空)
        // 用一个根结点创建树
        DefaultMutableTreeNode node2 = new DefaultMutableTreeNode(" Color ");
        JTree example4 = new JTree(node2); // 结点不可以颜色,默认为白面黑字
        example4.setBackground(Color.lightGray);
        // 构造函数:JTree(TreeNode root, boolean asksAllowsChildren)(同上,只是TreeNode又有不同)
        // 使用DefaultMutableTreeNode类先用一个根结点创建树,设置为可添加孩子结点,再添加孩子结点
        DefaultMutableTreeNode color = new DefaultMutableTreeNode(" Color ", true);
        DefaultMutableTreeNode gray = new DefaultMutableTreeNode(" Gray ");
        color.add(gray);
        color.add(new DefaultMutableTreeNode(" Red "));
        gray.add(new DefaultMutableTreeNode(" Lightgray "));
        gray.add(new DefaultMutableTreeNode(" Darkgray "));
        color.add(new DefaultMutableTreeNode(" Green "));
        JTree example5 = new JTree(color);
        // 构造函数:JTree(TreeNode root)(同上,只是TreeNode非空)
        // 通过逐个添加结点创建树
        DefaultMutableTreeNode biology = new DefaultMutableTreeNode(" Biology ");
        DefaultMutableTreeNode animal = new DefaultMutableTreeNode(" Animal ");
        DefaultMutableTreeNode mammal = new DefaultMutableTreeNode(" Mammal ");
        DefaultMutableTreeNode horse = new DefaultMutableTreeNode(" Horse ");
        mammal.add(horse);
        animal.add(mammal);
        biology.add(animal);
        JTree example6 = new JTree(biology);
        horse.isLeaf();
        horse.isRoot();
        // 构造函数:JTree(TreeModel newModel)
        // 用DefaultMutableTreeNodel类定义一个结点再用这个结点做参数定义一个用DefaultTreeMode
        // 创建一个树的模型,再用JTree的构造函数创建一个树
        DefaultMutableTreeNode root = new DefaultMutableTreeNode(" Root1 ");
        DefaultMutableTreeNode child1 = new DefaultMutableTreeNode(" Child1 ");
        DefaultMutableTreeNode child11 = new DefaultMutableTreeNode(" Child11 ");
        DefaultMutableTreeNode child111 = new DefaultMutableTreeNode(" Child111 ");
        root.add(child1);
        child1.add(child11);
        child11.add(child111);
        DefaultTreeModel model = new DefaultTreeModel(root);
        JTree example7 = new JTree(model);
        JPanel panel = new JPanel();
        panel.setLayout(new BoxLayout(panel, BoxLayout.X_AXIS));
        panel.setPreferredSize(new Dimension(700, 400));
        panel.add(new JScrollPane(example1)); // JTree必须放在JScrollPane上
        panel.add(new JScrollPane(example2));
        panel.add(new JScrollPane(example3));
        panel.add(new JScrollPane(example4));
        panel.add(new JScrollPane(example5));
        panel.add(new JScrollPane(example6));
        panel.add(new JScrollPane(example7));
        JFrame frame = new JFrame(" JTreeDemo ");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setContentPane(panel);
        frame.pack();
        frame.setVisible(true);
    }
}

具体数据操作,可参考这几种形成树的方式,封装数据!

有问题,再追问,good luck!~

更多追问追答
追问

意思是..这货

直接拖出来的这个确实是个骗子么...我已经手打出来了一个

这个是那个页面的一部分,我还没粘帖过去,但是我不会从数据库导数据进去..难道要我纯手打么,纯手打事小,但是查询的时候不就没有实现从数据库调用了?我是实习生...而且以前没学过Swing..求仔细解答,不要嫌弃小白

追答
插件是快速形成代码(布局)!
并不存在骗子一说,你看看拖出以后是不是有地方设置数据来源!
我没用过netbeans,在这个方面不发表意见!

数据库中调取数据,如使用jdbc 等。
通过程序代码实现数据库增删改查(这个有无问题?)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式