Tree控件使用
来源:互联网 发布:2017淘宝客骗取佣金 编辑:程序博客网 时间:2024/05/16 05:23
在Flex的开发中,Tree控件是比较常用的控件,Flex开发文档为我们提供了丰富的示例,但在实际开发中,我们经常要从自己的XML文件中获取数据,而开发文档中这方面资料比较欠缺。
下面我介绍一种比较有用的Tree控件开发方法。
下面我介绍一种比较有用的Tree控件开发方法。
<mx:Tree id="MusicTypeTree"
left="5" right="5"
showRoot="false"
labelField="@label"
bottom="5" top="40"
click="click(event)"/>
left="5" right="5"
showRoot="false"
labelField="@label"
bottom="5" top="40"
click="click(event)"/>
这是我定义的一个Tree,labelField你可以自己定义成你的XML文件中Label Attribute的Name
<mx:HTTPService
id="SrvTreeList"
url="{urlTREELIST}"
useProxy="false"
result="init()"
resultFormat="xml"
/>
id="SrvTreeList"
url="{urlTREELIST}"
useProxy="false"
result="init()"
resultFormat="xml"
/>
定义一个HTTPService,当然也可以是WebService,看你从哪里获得数据了,切记这里的resultFormat一定要是XML,否则无法解析
<mx:Script>
<![CDATA[
import mx.controls.Alert;
import flash.net.URLRequest;
private var XMLTreeList:XML;
private var u:URLRequest;
private function init():void
{
//先把数据取出来交给XML,再交给dataProvider,因为dataProvider不能直接解析String为XML
XMLTreeList=XML(SrvTreeList.lastResult.toString());
MusicTypeTree.dataProvider=XMLTreeList;
}
private function click(obj:Event):void
{
//如果有value属性,也就是子node,直接打开相关页面
if(MusicTypeTree.selectedItem.hasOwnProperty("value"))
{
u=new URLRequest(MusicTypeTree.selectedItem.@value);
navigateToURL(u);
}else{
//没有那就展开,如果展开了就收缩
MusicTypeTree.expandItem(MusicTypeTree.selectedItem,!MusicTypeTree.isItemOpen(MusicTypeTree.selectedItem),true);
}
}
]]>
</mx:Script>
<![CDATA[
import mx.controls.Alert;
import flash.net.URLRequest;
private var XMLTreeList:XML;
private var u:URLRequest;
private function init():void
{
//先把数据取出来交给XML,再交给dataProvider,因为dataProvider不能直接解析String为XML
XMLTreeList=XML(SrvTreeList.lastResult.toString());
MusicTypeTree.dataProvider=XMLTreeList;
}
private function click(obj:Event):void
{
//如果有value属性,也就是子node,直接打开相关页面
if(MusicTypeTree.selectedItem.hasOwnProperty("value"))
{
u=new URLRequest(MusicTypeTree.selectedItem.@value);
navigateToURL(u);
}else{
//没有那就展开,如果展开了就收缩
MusicTypeTree.expandItem(MusicTypeTree.selectedItem,!MusicTypeTree.isItemOpen(MusicTypeTree.selectedItem),true);
}
}
]]>
</mx:Script>
这就是上面两个控件牵扯到的init()和click()方法的代码,别忘了HTTPService先要在页面加载完成后send()下,否则没数据。init()方法让Tree显示出来,click方法接受事件的触发,当然click事件可以根据程序需要进行修改。
下面是我的XML文件
<?xml version="1.0" encoding="utf-8"?>
<MyMusicOnline>
<node label="Piano">
<node label="Piano1" value="http://www.gcoresoft.com/"/>
<node label="Piano2"/>
</node>
<node label="Bass">
<node label="Bass1"/>
<node label="Bass2"/>
</node>
<node label="Sax">
<node label="Sax1"/>
<node label="Sax2"/>
</node>
<node label="Guitar">
<node label="Guitar1"/>
<node label="Guitar2"/>
</node>
</MyMusicOnline>
<MyMusicOnline>
<node label="Piano">
<node label="Piano1" value="http://www.gcoresoft.com/"/>
<node label="Piano2"/>
</node>
<node label="Bass">
<node label="Bass1"/>
<node label="Bass2"/>
</node>
<node label="Sax">
<node label="Sax1"/>
<node label="Sax2"/>
</node>
<node label="Guitar">
<node label="Guitar1"/>
<node label="Guitar2"/>
</node>
</MyMusicOnline>
- Tree控件使用
- tree控件使用
- ext tree控件 使用
- MFC Tree Control控件使用
- 树形控件(Tree)的使用
- MFC Tree Control控件使用
- Ext Tree控件的使用
- MFC Tree Control控件使用
- TREE CTRL 控件的使用
- MFC Tree Control 控件使用
- 树形控件(Tree)的使用
- Flex 3入门教程: 使用 Tree 控件
- Ext Tree控件的使用总结
- flex 3: 使用 tree 控件(一) (
- flex 3: 使用 tree 控件(三) (
- 5.MFC Tree控件使用基础实例
- wxPython中tree控件的简单使用
- react树控件rc-tree使用简介
- 循序渐进学WinPcap
- 不能说的秘密
- 这个问题必须麻烦,懂编程的帮帮忙
- HDC vs CDC
- Datagram 连接简介
- Tree控件使用
- 如何用VC++开发读取网卡MAC地址的程序
- 创建用户控件自定义用户消息及调用(vc,mfc,消息影射)
- Note(5):对接口的理解(二)
- 转: 主窗体和子窗体之间如何相互操作对方的控件
- SWT编写界面窗口时让窗口处于屏幕中间
- .NET Framework 3.5的一些新功能
- struts
- Note(6):对接口的理解(三)