testjtree.java

来自「这是一张java应用教程的随书光盘」· Java 代码 · 共 44 行

JAVA
44
字号
import javax.swing.*;
import javax.swing.tree.*;import java.awt.*;
import java.awt.event.*;import javax.swing.event.*;
class Mytree2 extends JFrame implements TreeSelectionListener
{  JTree tree=null;JTextArea text=new JTextArea(20,20);
   Mytree2()
  {Container con=getContentPane();
   DefaultMutableTreeNode root=new DefaultMutableTreeNode("院系组成");
   DefaultMutableTreeNode t1=new DefaultMutableTreeNode("计算机系");
   DefaultMutableTreeNode t2=new DefaultMutableTreeNode("自动化系");
   DefaultMutableTreeNode t1_1=new DefaultMutableTreeNode("计算机软件专业");
   DefaultMutableTreeNode t1_2=new DefaultMutableTreeNode("计算机硬件专业");
   root.add(t1);root.add(t2);
   t1.add(t1_1);t1.add(t1_2); 
   tree =new JTree(root);
   JScrollPane scrollpane=new JScrollPane(text);
   JSplitPane splitpane=new JSplitPane(JSplitPane.VERTICAL_SPLIT,true,tree,scrollpane);
   tree.addTreeSelectionListener(this);   
   con.add(splitpane);
   addWindowListener(new WindowAdapter()
     { public void windowClosing(WindowEvent e)
      {System.exit(0);} });
   setVisible(true);setBounds(70,80,200,300);
    }
 public void valueChanged(TreeSelectionEvent e)
  { if(e.getSource()==tree)
     {DefaultMutableTreeNode node=
      (DefaultMutableTreeNode)tree.getLastSelectedPathComponent();
      if(node.isLeaf())
        { String str=node.toString();
           if(str.equals("计算机软件专业"))
             {text.setText(str+":拥有教授20个,研究生100个");}
           else if(str.equals("计算机硬件专业"))
            {text.setText(str+":是重点建设学科,具有硕士学位授予权");}}
      else 
       {text.setText(node.getUserObject().toString());}}
  }
}
class Testjtree
{public static void main(String args[])
  { Mytree2 win=new Mytree2();win.pack();
 } 
}

⌨️ 快捷键说明

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