在树中添加TreeSelectionListener,在它的valueChanged(TreeSelectionEvent se){JTree tree = se.getSource();
DefaultMutableNode selectNode = (DefaultMutableNode )tree.getLastSelectedPathComponent();
String str = selectNode.toString();
}
str即是你所要的。

解决方案 »

  1.   

    package test;import java.awt.*;
    import com.borland.jbcl.layout.*;
    import javax.swing.*;
    import javax.swing.tree.*;
    import javax.swing.event.*;
    import java.awt.event.*;
    import java.util.Vector;/**
     * Title:
     * Description:
     * Copyright:    Copyright (c) 2002
     * Company:
     * @author
     * @version 1.0
     */public class Frame1 extends JFrame {
      XYLayout xYLayout1 = new XYLayout();
      JComboBox jComboBox1 = new JComboBox();
      JTextField jTextField1 = new JTextField();
      Vector vecL=new Vector();
      JTree jTree1;// = new JTree();
      DefaultMutableTreeNode root;  public Frame1() {
        try {
          jbInit();
        }
        catch(Exception e) {
          e.printStackTrace();
        }
      }
      private void jbInit() throws Exception {
        this.getContentPane().setLayout(xYLayout1);
        /* for(int i=0;i<20;i++){
            vecL.add(new String(Integer.toString(i)));
         }
         for(int i=0;i<20;i+=4){
          System.out.println("!!!!!第"+i+"个元素 = "+vecL.elementAt(i));      }*/
        creatTree();
        jTree1 = new JTree(root);
        jTree1.getSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION);
        jTree1.addTreeSelectionListener(new SelListener());
        jComboBox1.addItem("OK");
        jComboBox1.addItem("NO");
        jComboBox1.addActionListener(new java.awt.event.ActionListener() {
          public void actionPerformed(ActionEvent e) {
            jComboBox1_actionPerformed(e);
    System.out.println("Hello!");
          }
        });
        this.getContentPane().add(jTree1, new XYConstraints(32, 32, 94, 131));
        this.getContentPane().add(jComboBox1, new XYConstraints(189, 85, -1, -1));
        this.getContentPane().add(jTextField1, new XYConstraints(166, 145, 183, -1));
      }  void jComboBox1_actionPerformed(ActionEvent e) {  }
      void creatTree()
      {
         root = new DefaultMutableTreeNode("C:"+"\\");
        DefaultMutableTreeNode pro = new DefaultMutableTreeNode("Program Files");    DefaultMutableTreeNode game = new DefaultMutableTreeNode("Game");    DefaultMutableTreeNode age = new DefaultMutableTreeNode("age");
        DefaultMutableTreeNode brood = new DefaultMutableTreeNode("brood");
        game.add(age);
        game.add(brood);    root.add(game);
        root.add(pro);
      }  class SelListener implements TreeSelectionListener{
        public void valueChanged(TreeSelectionEvent se)
        {
          JTree tree = (JTree)se.getSource();
          DefaultMutableTreeNode selNode = (DefaultMutableTreeNode)tree.getLastSelectedPathComponent();
          jTextField1.setText(selNode.toString());    }
      }public static void main(String[] args){
       try {
          //UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
          //UIManager.setLookAndFeel(new com.sun.java.swing.plaf.motif.MotifLookAndFeel());
          //UIManager.setLookAndFeel(new javax.swing.plaf.multi.MultiLookAndFeel());    }
        catch(Exception e) {
          e.printStackTrace();
        }
       Frame1 frame=new Frame1();
       frame.setSize(600,400);
       frame.setLocation(100,100);
       frame.show();
      }
    }