DefaultMutableTreeNode root = new DefaultMutableTreeNode("学校");
DefaultMutableTreeNode zx = new DefaultMutableTreeNode("中学");
root.add(zx);
DefaultMutableTreeNode temp = new DefaultMutableTreeNode("高中");
zx.add(temp);
DefaultMutableTreeNode temp = new DefaultMutableTreeNode("初中");
zx.add(temp);
JTree tree = new JTree(root);

解决方案 »

  1.   

    用下面这个方法。
    insertNodeInto(MutableTreeNode newChild,
                               MutableTreeNode parent,
                               int index)
      

  2.   

    先用tree.getLastSelectedPathComponent()得到鼠标选择的节点。
    然后再tree的Model上调用insertNodeInto(MutableTreeNode newChild,
                               MutableTreeNode parent,
                               int index)
    newChild是你要新加的节点。
      

  3.   

    重复new DefaultMutableTreeNode("职高")再加一次到中学就行了呀,每个节点增加都是一样的。
      

  4.   

    我不想用鼠标事先选择一个节点.
    treeModel.insertNodeInto(newnode, parent,parent.getChildCount());
    我用这个方法不行.添加不进去.
      

  5.   

    parent=new DefaultMutableTreeNode("中学");
    newnode= new DefaultMutableTreeNode("职高");
    treeModel.insertNodeInto(newnode, parent,parent.getChildCount());
    用这中方法就不行.就是添加不进去啊.不知道为什么?
      

  6.   

    TreeNode[] nodes = model.getPathToRoot(newnode);
    TreePath path = new TreePath(nodes);
    tree.scrollPathToVisible(path);
      

  7.   

    你的tree= new JTree(model);model应该要是DefaultTreeNode。最后用上面的语句显示到刚加的一条。
      

  8.   

    另外,我看你说没有选择节点,那你的parent是怎么来?
      

  9.   

    我事先把parent的值存入到一个列表中.查询列表得出parent