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

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

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

    在樹節(jié)點上顯示用戶對象的某個字段值

    開發(fā)工具:Eclipse3.2+VisualEditor插件

    import  java.awt.BorderLayout;
    import  javax.swing.SwingUtilities;
    import  javax.swing.JPanel;
    import  javax.swing.JFrame;
    import  java.awt.GridBagLayout;
    import  javax.swing.JTree;
    import  javax.swing.tree.DefaultMutableTreeNode;
    import  javax.swing.tree.DefaultTreeModel;
    import  javax.swing.tree.TreeNode;
    import  javax.swing.tree.TreePath;
    import  java.awt.GridBagConstraints;
    import  javax.swing.JButton;
    import  java.awt.FlowLayout;
    // 在樹節(jié)點上顯示用戶對象的某個字段值。
    public   class  IDTree
    {

        
    private  JFrame jFrame  =   null ;

        
    private  JPanel jContentPane  =   null ;

        
    private  JPanel jPanel  =   null ;

        
    private  JTree jTree  =   null ;

        
    private  JPanel jPanel1  =   null ;

        
    private  JButton jButton  =   null ;

        
    private  JButton jButton1  =   null ;

        
    private  DefaultTreeModel treeModel;

        
    private  DefaultMutableTreeNode root;

        
    private   int  id;


        
    /**
         * This method initializes jPanel
         * 
         * 
    @return  javax.swing.JPanel
         
    */

        
    private  JPanel getJPanel()
        
    {
            
    if  (jPanel  ==   null )
            
    {
                GridBagConstraints gridBagConstraints 
    =   new  GridBagConstraints();
                gridBagConstraints.fill 
    =  GridBagConstraints.BOTH;
                gridBagConstraints.gridy 
    =   0 ;
                gridBagConstraints.weightx 
    =   1.0 ;
                gridBagConstraints.weighty 
    =   1.0 ;
                gridBagConstraints.gridheight 
    =   1 ;
                gridBagConstraints.gridx 
    =   0 ;
                jPanel 
    =   new  JPanel();
                jPanel.setLayout(
    new  GridBagLayout());
                jPanel.add(getJTree(), gridBagConstraints);
            }

            
    return  jPanel;
        }


        
    /**
         * This method initializes jTree
         * 
         * 
    @return  javax.swing.JTree
         
    */

        
    private  JTree getJTree()
        
    {
            
    if  (jTree  ==   null )
            
    {
                Person person 
    =   new  Person();
                root 
    =   new  DefaultMutableTreeNode(person);
                treeModel 
    =   new  DefaultTreeModel(root);
                jTree 
    =   new  JTree(treeModel);
                jTree.setEditable(
    true );
                jTree.setShowsRootHandles(
    true );
                jTree
                        .addTreeSelectionListener(
    new  javax.swing.event.TreeSelectionListener()
                        
    {
                            
    public   void  valueChanged(
                                    javax.swing.event.TreeSelectionEvent e)
                            
    {
                                
    //  TODO Auto-generated 選擇樹節(jié)點事件
                                TreePath path  =  jTree.getSelectionPath();
                                
    if  (path  ==   null )
                                    
    return ;
                                DefaultMutableTreeNode selectedNode 
    =  (DefaultMutableTreeNode) path
                                        .getLastPathComponent();
                                Person person 
    =  (Person) selectedNode
                                        .getUserObject();
                                System.out.println(
    " ID: "   + person.getId()
                                        
    +   "  name: "   +  person.getName()
                                        
    +   "  level: "   +  person.getLevel());
                            }

                        }
    );
            }

            
    return  jTree;
        }


        
    /**
         * This method initializes jPanel1
         * 
         * 
    @return  javax.swing.JPanel
         
    */

        
    private  JPanel getJPanel1()
        
    {
            
    if  (jPanel1  ==   null )
            
    {
                jPanel1 
    =   new  JPanel();
                jPanel1.setLayout(
    new  FlowLayout());
                jPanel1.add(getJButton(), 
    null );
                jPanel1.add(getJButton1(), 
    null );
            }

            
    return  jPanel1;
        }


        
    /**
         * This method initializes jButton
         * 
         * 
    @return  javax.swing.JButton
         
    */

        
    private  JButton getJButton()
        
    {
            
    if  (jButton  ==   null )
            
    {
                jButton 
    =   new  JButton();
                jButton.setText(
    " 增加人員 " );
                jButton.addActionListener(
    new  java.awt.event.ActionListener()
                
    {
                    
    public   void  actionPerformed(java.awt.event.ActionEvent e)
                    
    {
                        
    //  TODO Auto-generated 增加節(jié)點事件
                        DefaultMutableTreeNode selectedNode  =  (DefaultMutableTreeNode) jTree.getLastSelectedPathComponent();
                        
    if  (selectedNode  ==   null )
                            
    return ;
                        Person person 
    =   new  Person();
                        person.setId(
    ++ id);
                        DefaultMutableTreeNode newNode 
    =   new  DefaultMutableTreeNode(person);
                        treeModel.insertNodeInto(newNode, selectedNode,selectedNode.getChildCount());
                        TreeNode[] nodes 
    =  treeModel.getPathToRoot(newNode);
                        TreePath path 
    =   new  TreePath(nodes);
                        jTree.scrollPathToVisible(path);
                    }

                }
    );
            }

            
    return  jButton;
        }


        
    /**
         * This method initializes jButton1
         * 
         * 
    @return  javax.swing.JButton
         
    */

        
    private  JButton getJButton1()
        
    {
            
    if  (jButton1  ==   null )
            
    {
                jButton1 
    =   new  JButton();
                jButton1.setText(
    " 刪除人員 " );
                jButton1.addActionListener(
    new  java.awt.event.ActionListener()
                
    {
                    
    public   void  actionPerformed(java.awt.event.ActionEvent e)
                    
    {
                        
    //  TODO Auto-generated 刪除節(jié)點事件
                        DefaultMutableTreeNode selectedNode  =  (DefaultMutableTreeNode) jTree .getLastSelectedPathComponent();
                        
    if  (selectedNode  !=   null &&  selectedNode.getParent()  !=   null )
                        
    {
                            treeModel.removeNodeFromParent(selectedNode);
                        }

                    }

                }
    );
            }

            
    return  jButton1;
        }


        
        
    /**
         * 
    @param  args
         
    */

        
    public   static   void  main(String[] args)
        
    {
            
    //  TODO Auto-generated method stub
            SwingUtilities.invokeLater( new  Runnable()
            
    {
                
    public   void  run()
                
    {
                    IDTree application 
    =   new  IDTree();
                    application.getJFrame().setVisible(
    true );
                }

            }
    );
        }


        
    /**
         * This method initializes jFrame
         * 
         * 
    @return  javax.swing.JFrame
         
    */

        
    private  JFrame getJFrame()
        
    {
            
    if  (jFrame  ==   null )
            
    {
                jFrame 
    =   new  JFrame();
                jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                jFrame.setSize(
    800 600 );
                jFrame.setLocation(
    100 100 );
                jFrame.setContentPane(getJContentPane());
                jFrame.setTitle(
    " 人員級別樹 " );
            }

            
    return  jFrame;
        }


        
    /**
         * This method initializes jContentPane
         * 
         * 
    @return  javax.swing.JPanel
         
    */

        
    private  JPanel getJContentPane()
        
    {
            
    if  (jContentPane  ==   null )
            
    {
                jContentPane 
    =   new  JPanel();
                jContentPane.setLayout(
    new  BorderLayout());
                jContentPane.add(getJPanel(), BorderLayout.CENTER);
                jContentPane.add(getJPanel1(), BorderLayout.SOUTH);
            }

            
    return  jContentPane;
        }


    }


    class  Person
    {
        
    private   int  id; // 人員加入順序的編號,從1開始。

        
    private   int  name; // 人員姓名,暫時不設(shè)置。

        
    private   int  level; // 人員等級,暫時不設(shè)置。
        
        
        
    public   int  getId()
        
    {
            
    return  id;
        }



        
    public   void  setId( int  id)
        
    {
            
    this .id  =  id;
        }



        
    public   int  getLevel()
        
    {
            
    return  level;
        }



        
    public   void  setLevel( int  level)
        
    {
            
    this .level  =  level;
        }



        
    public   int  getName()
        
    {
            
    return  name;
        }



        
    public   void  setName( int  name)
        
    {
            
    this .name  =  name;
        }



        @Override
        
    public  String toString() // 關(guān)鍵步驟,通過重寫Object的toString(),來實現(xiàn)在樹節(jié)點上顯示加入人員的順序編號。
         {
            
    //  TODO Auto-generated method stub
             return  String.valueOf(id);
        }


    }


     



    posted on 2007-03-02 18:23 我為J狂 閱讀(826) 評論(0)  編輯  收藏 所屬分類: 圖形用戶界面

    <2007年3月>
    25262728123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    導(dǎo)航

    統(tǒng)計

    常用鏈接

    留言簿(11)

    隨筆分類(48)

    文章分類(29)

    常去逛逛

    搜索

    積分與排名

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲午夜精品久久久久久app| A级毛片成人网站免费看| 羞羞漫画小舞被黄漫免费| 99在线免费视频| 毛片免费vip会员在线看| 亚洲国产婷婷综合在线精品| 亚洲国产AV无码专区亚洲AV| 亚洲熟妇无码八V在线播放| ww在线观视频免费观看w| 免费视频爱爱太爽了| 亚洲香蕉网久久综合影视| 激情亚洲一区国产精品| 三年片免费高清版| 亚洲成a人无码av波多野按摩| 亚洲H在线播放在线观看H| 国产成人AV免费观看| 亚洲无线一二三四区手机| 亚洲最大的成人网| 成人免费看吃奶视频网站| 337p日本欧洲亚洲大胆色噜噜| 在线免费观看h片| 国内精品久久久久久久亚洲| 理论片在线观看免费| 日韩精品电影一区亚洲| 亚洲日韩看片无码电影| 午夜免费福利在线| 国产精品观看在线亚洲人成网| 97在线观免费视频观看 | 成年女人毛片免费视频| 91亚洲精品自在在线观看| 污污网站免费观看| 亚洲一区综合在线播放| 日韩在线不卡免费视频一区| 亚洲综合在线视频| 国产精品永久免费10000| 亚洲乱码中文论理电影| 成年女人毛片免费观看97| 亚洲国产欧洲综合997久久| 国产在线98福利播放视频免费| 久久久久久亚洲精品无码| 亚洲伊人成无码综合网|