小弟用treeviewer 创建了一棵树。图书馆
 |__计算机
 |      |__java
 |     |__java
 |     |__sql
 |__英语
       |__考研
       |__六级
如果有如上的一棵树。图书的名字是可以重复的。如果用户选中了第二本java。如何确定这个节点的具体位置。然后到数据库中查找这本图书的ISBN(唯一)

解决方案 »

  1.   

    没对齐 树如下图书馆 
    |__计算机 
    |    |__java 
    |    |__java 
    |    |__sql 
    |
    |__英语 
          |__考研 
          |__六级 
      

  2.   

    JTree tree = (JTree) e.getSource();
            int rowloc = tree.getRowForLocation(e.getX(), e.getY());
            TreePath treepath = tree.getPathForRow(rowloc);
            if (treepath != null) {
                DefaultMutableTreeNode node = (DefaultMutableTreeNode) treepath.getLastPathComponent();
                Object object = node.getUserObject();
                Object[] nodes = treepath.getPath();
                if (nodes.length == 1) {
                } else if (nodes.length == 2) {
                   
                } else if (nodes.length == 3) {
                //点击java 的那个节点
                   
                } else if (nodes.length == 4) {
                    
                } else if (nodes.length == 5) {
                    
                } else {
                }        }
    图书馆        //nodes.length == 1
    |__计算机     //nodes.length == 2
    |      |__java    ///nodes.length == 3
    |    |__java 
    |    |__sql 
    |__英语 
          |__考研 
          |__六级