首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java JTree - setSeelectionPath

Java JTree - setSeelectionPath
EN

Stack Overflow用户
提问于 2013-11-19 08:45:05
回答 1查看 154关注 0票数 0

我想从我的代码中选择JTree中的一个节点。我正在调用setSelectionPath方法,但是什么也没有发生。我的代码出了什么问题?

代码语言:javascript
复制
public class test extends JFrame {

   private static DefaultMutableTreeNode  root, light, medium, dark, whiteNode;  

   private  static JTree tree;

   public static void main(String[] args){

    new test();

    tree.setSelectionPath(new TreePath(whiteNode.getPath()));



   }

   public test(){


      root = new DefaultMutableTreeNode("colors");

      tree = new JTree(root);


      light =  addFile("light", root); 
      medium = addFile("medium", root);
      dark = addFile("dark", root);

      //Add leaf nodes to light
      whiteNode = addFile("white", light);

      //Add leaf nodes to medium
      addFile("green", medium); 
      addFile("yellow", light);
      addFile("orange", light);
      addFile("violet", light); 

     this.getContentPane().add(tree);
     this.setVisible(true);
     this.validate();
     this.validateTree();

   }


    private DefaultMutableTreeNode addFile(String fname, DefaultMutableTreeNode parentFolder){

    DefaultMutableTreeNode newFile = new DefaultMutableTreeNode(fname);
    parentFolder.add(newFile);

    return newFile; 

}

}

提前感谢

EN

回答 1

Stack Overflow用户

发布于 2013-11-19 09:20:04

此语句中构造函数使用的引用

代码语言:javascript
复制
TreePath t = new TreePath("colors, light, white");

需要引用最后一个路径组件,并且应该是TreePath类型而不是String类型

代码语言:javascript
复制
tree.setSelectionPath(new TreePath(whiteNode.getPath()));

分配whiteNode的位置

代码语言:javascript
复制
whiteNode = addFile("white", light);

阅读:How to Use Trees

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20060997

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档