在只知道所有父节点的情况下,如何新增子节点?

kingsmiler 2007-11-12 11:48:34
如题, 用treemodel产生一颗树tree!

比如我想在root-p1-p2下插入子节点leaff,请问怎么做?

我想用TreePath,但构建的路径如何与treemodel, tree产生关系?谢谢!
...全文
112 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
fayewan 2007-11-15
  • 打赏
  • 举报
回复
addTreeSelectionListener(new TreeSelectionListener(){
public void valueChanged(TreeSelectionEvent e){
TreePath tp = e.getNewLeadSelectionPath();
if (tp == null)
return;

在后面加上动作代码,就可以实现 ,很简单的.
kingsmiler 2007-11-15
  • 打赏
  • 举报
回复
是啊,我也是用循环遍历的方法,就是感觉效率不是很高,才发帖问问。
AppleYang2006 2007-11-15
  • 打赏
  • 举报
回复
那只能采用遍历树,比较找到父节点.然后Add了
我以前做项目是采用的这种方式,不知道有没有更好的方式.
someboyok 2007-11-14
  • 打赏
  • 举报
回复
treeModel.insertNodeInto(newNode,parentNode,nodeIndex);
kingsmiler 2007-11-14
  • 打赏
  • 举报
回复
真的不想承认,高手真的都很少来论坛的。。


对于直接New出来的TreePath, 是现有的树无法使用的,你想tree.setSelectionPath(newPath),对不起, 会出现异常的。

同理,对new出来的DefaultMutableTreeNode, 是没有加入现有树之前,treeModel.getPathToRoot(newNode)也是无效的。

我想高手一定遇到过这样的问题,而且已经解决了。 呼唤高手!!
kingsmiler 2007-11-13
  • 打赏
  • 举报
回复
高手帮忙啊?
AppleYang2006 2007-11-13
  • 打赏
  • 举报
回复
那就先确定父节点了.你的问题我不太明白.你想用什么方式增加,是选中,还是指定特定的节点.
kingsmiler 2007-11-13
  • 打赏
  • 举报
回复
饿..

是这样的,情况是:1, 只知道现有节点的userobject,也就是名称, 比如说
root
-p1
--c1
-p2
--c2

2, 根节点 root

问题:现在有个字符串c3, 如果把c3加到p1下面作它的子节点,你该怎么做呢?
kingsmiler 2007-11-12
  • 打赏
  • 举报
回复

要是这样就行了的话我就不会发贴了。

首先,所谓的“子节点”这个说法并不成立,就算用

DefaultMutableTreeNode newNode = new DefaultMutableTreeNode("leaff");

但这还是孤立的!

我也想Add啊,可我问的就是如何确定它的父亲节点。 顶起!
AppleYang2006 2007-11-12
  • 打赏
  • 举报
回复
得到节点的DefaultMutableTreeNode,然后Add就行了

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧