TreeMenu从XML加载的简单例子

本文介绍了一种使用Flex和ActionScript通过HTTPService加载XML文件,并将其动态填充到Tree组件的方法。这种方法适用于创建可动态更新的菜单或树形结构。

TreeFromXML.mxml

None.gif<?xml version="1.0" encoding="utf-8"?>
None.gif
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" 
None.gif    fontFamily
="simsun" fontSize="12" 
None.gif    layout
="absolute" creationComplete="menu.send();" width="242" height="442">
None.gif
<mx:Script>
None.gif    
<![CDATA[
None.gif        import mx.collections.ArrayCollection;
None.gif        import mx.rpc.events.ResultEvent;
None.gif        [Bindable]
None.gif        private var menus:XML;
None.gif        private function LoadMenu(event:ResultEvent):void{
None.gif            menus = XML(event.result);
None.gif            var results:XMLList = menus.node;
None.gif            tree.dataProvider = results;
None.gif        }
None.gif    
]]>
None.gif
</mx:Script>
None.gif    
<mx:HTTPService url="TreeMenus.xml" id="menu" useProxy="false" 
None.gif        showBusyCursor
="true" result="LoadMenu(event)" resultFormat="xml"/>
None.gif
None.gif    
<mx:Tree id="tree" x="10" y="35" width="218" height="397" labelField="@label" />
None.gif    
<mx:Label x="10" y="10" text="Tree Nodes From XML File"/>
None.gif
</mx:Application>
None.gif
None.gif

TreeMenus.xml

None.gif<?xml version="1.0" encoding="utf-8"?>
None.gif
<menus>
None.gif    
<node label="Mail">
None.gif        
<node label="Inbox"/>
None.gif        
<node label="Personal Folder">
None.gif            
<node label="Demo"/>
None.gif            
<node label="Personal"/>
None.gif            
<node label="Saved Mail"/>
None.gif            
<node label="bar"/>
None.gif        
</node>
None.gif        
<node label="Calendar"/>
None.gif        
<node label="Sent"/>
None.gif        
<node label="Trash"/>
None.gif    
</node>
None.gif
</menus>
None.gif


////////////////////////////////
总结
1.用<mx:HTTPServiec>将XML加载进来,加载完成时触发Result事件,将tree.dataProvider绑定
2.在AS中动态加载可使用URLLoader

转载于:https://www.cnblogs.com/fishert/archive/2007/03/02/661195.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值