5D艺术网首页
商城
|
资讯
|
作品
|
博客
|
教程
|
论坛
登录
注册
加为好友
发短消息
来自:
性别:秘密
最后登录:2012-02-26
http://kwwx.5d.cn/
首页
|
新闻
|
话题
|
博客
|
相册
|
艺术作品
|
社交关系
|
留言板
|
社交圈
2006/06/22 | tree组件的删除和获取父结点(转贴)
类别(多媒体世界)
|
评论
(0)
|
阅读(109)
|
发表于 10:48
查了查Flash的帮助,搞定了! 我的测试代码(没有加入删除,但是问题已经解决了) a = myTree.addTreeNode("a");//myTree即Tree组件
a.addTreeNode("aa");
a.addTreeNode("ab");
ac = a.addTreeNode("ac");
ac.addTreeNode("aaa");
ac.addTreeNode("aab");
aa = ac.addTreeNode("aac");
myTreeListener = new Object();
myTreeListener.change = function(tmp) {
var child=tmp.target.selectedItem;//选中的子节点
var f = tmp.target.selectedItem.parentNode;//选中的子节点的父节点
var labels=[tmp.target.selectedItem.attributes.label]//子节点的label
var fathers=[tmp.target.selectedItem]//子节点
while (f != null) {//有父节点时
var f2 = f;
f = f2.parentNode;//父节点的父节点
labels.push(f2.attributes.label)//父节点的label
fathers.push(f2)//父节点
}//这个while差不多是个无限的
labels.pop()
fathers.pop()//这里要将最后一位去掉,因为最后一位是undefined
trace(labels)//输出label
trace(fathers)//输出子节点和它的父节点和父节点的父节点和......
nu=myTree.getDisplayIndex(child)//子节点在Tree中的索引
trace(nu)//输出索引
};
myTree.addEventListener("change", myTreeListener); 这就OK啦!想不到这么简单?
--------------------------------------------------------------------------------
不要慌,不要急,放开手脚想问题!
我的blog
fscyjb.blogdriver.com
CYJB
等级:FLASH 2
注册:2005-01-15
发贴:157
积分:6
访问我的Blog 2005-01-21, 20:12 下午 IP 地址:已记录 报告 收藏 第6楼
捐赠积分再加一点:上面的可以获取父级,这里的可以实现即点即删 myTreeListener = new Object();
myTreeListener.change = function(tmp) {
var child=tmp.target.selectedItem
var f = tmp.target.selectedItem.parentNode;
fan=myTree.getDisplayIndex(f)
chn=myTree.getDisplayIndex(child)
nu=chn-fan-1
f.removeTreeNodeAt(nu)
};
myTree.addEventListener("change", myTreeListener); 还有简单的: myTreeListener = new Object();
myTreeListener.change = function(tmp) {
var f = tmp.target.selectedItem.parentNode;
f.removeTreeNodeAt(myTree.getDisplayIndex(tmp.target.selectedItem)-myTree.getDisplayIndex(f)-1)
};
0
评论
Comments
日志分类
首页
[86]
旅途
[40]
多媒体世界
[34]
天下
[11]
我的世界观
[1]