JTree的简单例子

java 代码
  1. package example;   
  2.   
  3. import java.awt.BorderLayout;   
  4.   
  5. import javax.swing.JFrame;   
  6. import javax.swing.JLabel;   
  7. import javax.swing.JTree;   
  8. import javax.swing.event.TreeSelectionEvent;   
  9. import javax.swing.event.TreeSelectionListener;   
  10. import javax.swing.tree.DefaultMutableTreeNode;   
  11. import javax.swing.tree.DefaultTreeModel;   
  12. import javax.swing.tree.TreePath;   
  13.   
  14. public class SimpleTree extends JFrame {   
  15.   
  16.       JTree tree;   
  17.       DefaultTreeModel treeModel;   
  18.   
  19.       public SimpleTree( ) {   
  20.         super("Tree Test Example");   
  21.         setSize(400300);   
  22.         setDefaultCloseOperation(EXIT_ON_CLOSE);   
  23.       }   
  24.   
  25.       public void init( ) {   
  26.         // Build up a bunch of TreeNodes. We use DefaultMutableTreeNode because the   
  27.         // DefaultTreeModel can use it to build a complete tree.   
  28.         DefaultMutableTreeNode root = new DefaultMutableTreeNode("Root");   
  29.         DefaultMutableTreeNode subroot = new DefaultMutableTreeNode("SubRoot");   
  30.         DefaultMutableTreeNode leaf1 = new DefaultMutableTreeNode("Leaf 1");   
  31.         DefaultMutableTreeNode leaf2 = new DefaultMutableTreeNode("Leaf 2");   
  32.            
  33.         // Build our tree model starting at the root node, and then make a JTree out   
  34.         // of it.   
  35.         treeModel = new DefaultTreeModel(root);   
  36.         tree = new JTree(treeModel);   
  37.   
  38.         // Build the tree up from the nodes we created.   
  39.         treeModel.insertNodeInto(subroot, root, 0);   
  40.         // Or, more succinctly:   
  41.         subroot.add(leaf1);   
  42.         root.add(leaf2);   
  43.   
  44.         // Display it.   
  45.         getContentPane( ).add(tree, BorderLayout.CENTER);   
  46.            
  47.         final JLabel messageLabel = new JLabel("Nothing selected.");   
  48.         add(messageLabel, BorderLayout.SOUTH);   
  49.            
  50. //    Add our selection listener and have it report to   
  51.         // our messageLabel.   
  52.         tree.addTreeSelectionListener(new TreeSelectionListener( ) {   
  53.           public void valueChanged(TreeSelectionEvent tse) {   
  54.             TreePath tp = tse.getNewLeadSelectionPath( );   
  55.             messageLabel.setText("Selected: " + tp.getLastPathComponent( ));   
  56.           }   
  57.         });   
  58.   
  59.   
  60.       }   
  61.   
  62.       public static void main(String args[]) {   
  63.         SimpleTree tt = new SimpleTree( );   
  64.         tt.init( );   
  65.         tt.setVisible(true);   
  66.       }   
  67.     }  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值