每天学一点flash(13) tree组件 与xml配合配合使用
来源:互联网 发布:如何查询数据库地址吗 编辑:程序博客网 时间:2024/06/02 13:27
今天将以前做的一个网站的部分东西都写上来,当作是一种笔记。第一次用flash弄一个动态网站。就失败了,毕竟技术不过关,还好拉。现在把想记的东西都记下来。
Tree组件的使用结合xml的使用,挺有用的。
首先看一下xml文件,还是老的话题 as2.0处理xml文件也是很容易的
文件名字为:mymenu.xmll
<?xml version="1.0" encoding="UTF-8"?>
<root label="图书分类">
<node label="计算机">
<node label="flash教程" />
</node>
<node label="厨艺">
<node label="厨艺教程" />
</node>
<node label="健康">
<node label="饮食健康" />
</node>
</root>
第二步:新建fla文件,在组件里拖一个tree组件来,我把他名为:myTree,在第一帧上写上一这段代码:
myTree.vScrollPolicy="on";
System.useCodepage = true;//防止乱码
myTreeXML = new XML();//建立一个xml对象
myTreeXML.ignoreWhite = true;//忽略其中的空格
myTreeXML.load("mymenu.xml");//载入要编辑的xml文件
myTreeXML.onLoad = function(success) {
if (success) {
myTree.dataProvider = myTreeXML;//如果载入成功,为tree组件指定数据源
trace("成功");
} else {
trace("No success!!");
}
};
myTreeListener = new Object();
myTreeListener.change = function(tree) {
var xnode=tree.target.selectedItem;
trace(xnode.attributes.data);
}
myTree.addEventListener("change", myTreeListener);//监听对象
现在解析一下: 前面一段:
System.useCodepage = true;//防止乱码
myTreeXML = new XML();//建立一个xml对象
myTreeXML.ignoreWhite = true;//忽略其中的空格
myTreeXML.load("mymenu.xml");//载入要编辑的xml文件
myTreeXML.onLoad = function(success) {
if (success) {
myTree.dataProvider = myTreeXML;//如果载入成功,为tree组件指定数据源
trace("成功");
} else {
trace("No success!!");
}
};
是加载外部的xml文件,当中的套路都是这样
System.useCodepage = true;//防止乱码
myTreeXML = new XML();//建立一个xml对象
myTreeXML.ignoreWhite = true;//忽略其中的空格
myTreeXML.load("mymenu.xml");//载入要编辑的xml文件
myTreeXML.onLoad = function(success) {
if (success) {
trace("成功");
} else {
trace("No success!!");
}
};
可以模仿一下,现在不同的就是这一段
myTree.dataProvider = myTreeXML;//如果载入成功,为tree组件指定数据源
这里是为tree组件绑定一个xml数据。而接下来的工作就是像xml的数据操作
不同的是 这一段,组件是一对象需要监听
myTreeListener = new Object();
myTreeListener.change = function(tree) {
var xnode=tree.target.selectedItem;//选择某一节点
trace(xnode.attributes.data);
}
myTree.addEventListener("change", myTreeListener);//监听对象
问题1:我们可以用tree组件来干什么?
问题2::flash 8 组件的使用有没有缺点?在组件使用上应该注意些什么?有时候在预载的时候会不会出问题?
拓展:利用这个tree组件可以帮我们应用一些有趣的选择,相信发挥一下想象可以整出不错的东西来哦
接下来:我在场景添加了三个按钮,分别为添加,删除,修改按钮,这些按钮有助于
我们了解对节点的一些操作
添加按钮:
on(click){
_root.myTree.selectedNode.addTreeNode("Label");
_root.myTree.refresh();
}
删除按钮:
on(click)
{
_root.myTree.selectedNode.removeNode();
_root.myTree.dataProvider=_root.myTreeXML; //不从新设置XML会出现奇怪现象
_root.myTree.refresh();
}
修改按钮:
on(click)
{
_root.myTree.selectedNode.attributes.label="新标识";
_root.myTree.refresh();
}当然这些按钮还可以继续修改达到我们预想的效果,这些需要我们去理解一下吧,可以参考啊as2.0的文档
- 每天学一点flash(13) tree组件 与xml配合配合使用
- 每天学一点flash(4) 数组与xml配合使用
- ProgressIndicator组件使用指南之一:与Poll组件配合使用
- 每天学一点flash(22) as3.0 动态xml菜单
- 每天学一点flash(68)使用Capabilities 类
- DataGridView与BindingManagerBase配合使用
- Git与SVN配合使用
- eclipse与hadoop配合使用
- UITabBarController与UINavigationController配合使用
- Maven与Sonar配合使用
- UITabBarController与UINavigationController配合使用
- UITabBarController与UINavigationController配合使用
- UITabBarController与UINavigationController配合使用
- eclipse与cmake配合使用
- fixed与flex配合使用
- gearman 与pcntl配合使用
- Maven与Sonar配合使用
- BottomNavigationView与ViewPager配合使用
- 禁止开机时软件自启动的三种方法
- 这两天学dom4j的使用,在网上找的好的资料
- remoting实例
- 怎样把两台电脑连接
- 推荐一个建模工具Visual Paradigm
- 每天学一点flash(13) tree组件 与xml配合配合使用
- kill命令
- VM+Windbg配置实现kernel调试
- 解决卡巴和金山词霸冲突后的卡巴问题(部分保护组件启动失败)
- 钩子函数(HOOK)完整的教程
- 精妙SQL语句收集
- ASP常用函数
- 检查SQLServer 锁情况
- 文件上传(C#代码)