<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 97,  comments - 93,  trackbacks - 0
    如何在java swing里使用JTree,就像下面這樣的樹

    A tree

    手工創建:
    首先,你需要創建一個JScrollPane,然后創建一個JTree,再然后創建節點TreeNode
    JScrollPane是盛放JTree的容器,JTree是一個結構相當于一個房子的鋼筋框架,真正的內容是節點node。學過數據結構里的樹的話可能會好理解一點。寫代碼的時候,三個過程的創建順序不一定,也可以倒著過來寫。
    比如,創建一個簡單的初始化 樹的方法
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import javax.swing.JTree;
    import javax.swing.tree.*;
    public class NewTree {
        public NewTree() {
            JFrame jframe=new JFrame();//創建窗體
            Container c=jframe.getContentPane();//創建容器
           
            JScrollPane scrollPane=new JScrollPane();//創建一個用于樹的容器
            DefaultMutableTreeNode root=new DefaultMutableTreeNode("root");//創建樹根節點
            DefaultMutableTreeNode file=new DefaultMutableTreeNode("file1");//創建一個文件節點
            root.add(file);//將文件節點添加到根節點下
            JTree tree=new JTree(root);//以根節點為參數創建一個樹對象
            scrollPane.setViewportView(tree);//將樹添加到scrollPane里面,并顯示

           
            c.add(scrollPane);//將scrollPane添加到窗體里
            jframe.pack();
            jframe.setVisible(true);
            jframe.addWindowListener(new WindowAdapter(){//這段代碼用于默認關閉
                public void windowClosing(WindowEvent e){
                        System.exit(0);   
                }
            });
        }
        public static void main(String[] args){
            new NewTree();
        }
    }
    結果是這樣的:注意關鍵的是斜體的代碼,其他的都是swing的東西

    那么如何在netbeans里,創建和使用樹呢?好多人看到的都是下面這樣的:

    這是為什么呢?我找過代碼結果沒找到,后來發現這都是假的,你還是可以通過該改變代碼來創建和使用你的樹:改什么?改TreeModel.
    到源代碼界面下創建一個初始化樹的方法:
    public void treeInitialize(){
       JScrollPane scrollPane=new JScrollPane();
       DefaultMutableTreeNode root=new DefaultMutableTreeNode("root");
       DefaultMutableTreeNode file=new DefaultMutableTreeNode("file1");
       root.add(file);
       JTree tree=new JTree(root);
       TreeModel treeModel = new DefaultTreeModel(root);
       tree.setModel(treeModel);
    }
    注意黑體代碼,這樣在窗體的構造方法中調用treeInitialize()方法,你的樹就被改變了,tree是你用netbeans生成樹對象的引用或者名字,一般會是jTree1。
    接下來就是對樹的操作了,限于篇幅不能再講了
    posted on 2006-12-04 13:11 wqwqwqwqwq 閱讀(3874) 評論(2)  編輯  收藏 所屬分類: Simple Java

    FeedBack:
    # re: swing中JTree的使用和JTree在netbeans中的用法(轉)
    2007-11-18 21:58 | 飛飛
    為什么沒有提到JTree的事件監聽呢?  回復  更多評論
      
    # re: swing中JTree的使用和JTree在netbeans中的用法(轉)[未登錄]
    2007-11-18 22:07 | 曲強 Nicky
    參考下DefaultMutableTreeNode等類,改天有時間寫個簡單的例子  回復  更多評論
      
    <2007年11月>
    28293031123
    45678910
    11121314151617
    18192021222324
    2526272829301
    2345678




    常用鏈接

    留言簿(10)

    隨筆分類(95)

    隨筆檔案(97)

    文章檔案(10)

    相冊

    J2ME技術網站

    java技術相關

    mess

    搜索

    •  

    最新評論

    閱讀排行榜

    校園夢網網絡電話,中國最優秀的網絡電話
    主站蜘蛛池模板: 亚洲av无码专区国产乱码在线观看| 亚洲国产精品乱码在线观看97| 国产91在线|亚洲| 久久精品免费观看| 国产亚洲精品无码成人| 两个人日本WWW免费版| 中文字幕亚洲综合久久男男| 成年大片免费高清在线看黄| 免费播放春色aⅴ视频| 色婷婷精品免费视频| 亚洲国产高清精品线久久| 特级毛片爽www免费版| 亚洲高清最新av网站| 久久久受www免费人成| 亚洲AV无码一区二区乱孑伦AS| 无码人妻一区二区三区免费n鬼沢| 亚洲AV无码一区东京热久久 | 成年在线网站免费观看无广告| 亚洲成人福利在线| 成年大片免费视频| 免费无码国产在线观国内自拍中文字幕 | 欧美最猛性xxxxx免费| 亚洲乱亚洲乱妇无码| 免费国产在线观看| 日本亚洲欧洲免费天堂午夜看片女人员 | 亚洲视频在线观看一区| 中文字幕人成无码免费视频| 亚洲AV无码专区在线厂| 中文字幕亚洲乱码熟女一区二区 | a级毛片免费完整视频| 亚洲乱码一二三四五六区| 免费少妇a级毛片| 99爱视频99爱在线观看免费| 亚洲熟妇无码av另类vr影视| 精品亚洲一区二区三区在线播放 | 西西人体大胆免费视频| 97亚洲熟妇自偷自拍另类图片| 成人性生交视频免费观看| jizz在线免费观看| 亚洲91精品麻豆国产系列在线| 免费中文字幕在线观看|