注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

骇客归来

ぁ枫あ

 
 
 

日志

 
 

Flex Demo1  

2009-03-23 14:52:55|  分类: flex |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
Main.mxml
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" initialize="leftmenu.send();service.send();">//发送请求
    <mx:Script>
        <![CDATA[
            import mx.collections.ArrayCollection;
            import mx.rpc.events.ResultEvent;
            import mx.controls.Alert;
            import com.adobe.serialization.json.JSON;//下载地址http://code.google.com/p/as3corelib/
            
            [Bindable]
            private var leftMenuData:Object = null;
            
            private function initMenu(evt:ResultEvent):void {
                leftMenuData = evt.result.node;
            }
            
            private function onJSONData(event:ResultEvent):void { //HTTPService事件请求的结果对象
                var rawData:String = String(event.result);
                
                var arr:Array = (JSON.decode(rawData) as Array);//使用json
                
                var dp:ArrayCollection = new ArrayCollection(arr);
                
                grid.dataProvider = dp;
            }
            
            private function treeChange(event:Event):void {
                var nodeApp:String = Tree (event.target).selectedItem.@app;//选择xml的属性
                moduleLoader.source = nodeApp + ".swf";
            }
            
            
        ]]>
    </mx:Script>
    
    <mx:HTTPService id="leftmenu" resultFormat="e4x" url="leftmenu.xml" result="initMenu(event);" fault="Alert.show('server error', 'error occurs');"/>//这里需要制定Format为e4x才能正常解析xml
    <mx:HTTPService id="service" url="service.json" result="onJSONData(event);" fault="Alert.show('server error', 'error occurs');"/>
    <mx:HDividedBox width="100%" height="100%" icon="@Embed('assets/folder.gif')">
        <mx:Panel width="30%" height="100%" id="left" title="App Navigator">
            <mx:Accordion width="100%" height="100%">
                <mx:VBox label="Master" width="100%" height="100%">
                    <mx:Tree openDuration="100" width="100%" height="100%" id="menuTree" dataProvider="{leftMenuData}" labelField="@label" change="treeChange(event);"/>
                </mx:VBox>
                <mx:VBox label="Master1" width="100%" height="100%">
                    <mx:Tree width="100%" height="100%" id="menuTree2" dataProvider="{leftMenuData}" labelField="@label"/>
                </mx:VBox>
                <mx:VBox label="Master2" width="100%" height="100%">
                    <mx:Tree width="100%" height="100%" id="menuTree3" dataProvider="{leftMenuData}" labelField="@label"/>
                </mx:VBox>
            </mx:Accordion>
        </mx:Panel>
        <mx:VDividedBox width="70%" height="100%">
            <mx:Canvas autoLayout="true" width="100%" height="100%">
                <mx:Panel title="App Top" width="100%" height="100%">
                    <mx:DataGrid id="grid" width="100%" height="100%" editable="true">
                        <mx:columns>
                            <mx:DataGridColumn headerText="Service" dataField="src" dataTipField="desc" editable="true" />
                            <mx:DataGridColumn headerText="Title" dataField="title" editable="false"/>
                        </mx:columns>
                    </mx:DataGrid>
                    <mx:SWFLoader id="moduleLoader" width="100%" height="100%" />
                </mx:Panel>
            </mx:Canvas>
        </mx:VDividedBox>
    </mx:HDividedBox>
    
</mx:Application>


leftmenu.xml
<?xml version="1.0" encoding="utf-8"?>
<node>
    <node label="Main Menu1">
        <node label="Sub1" app="LoginModule"/>
        <node label="Sub2">
            <node label="Ssub1"  app="fff"/>
            <node label="Ssub2"  app="LoginModule"/>
            <node label="Ssub3"  app="LoginModule"/>
        </node>       
        <node label="Sub3"/>
    </node>
    <node label="Main Menu2">
        <node label="Sub1"/>
        <node label="Sub2"/>
        <node label="Sub3"/>
    </node>
    <node label="Main Menu2">
        <node label="Sub1"/>
        <node label="Sub2"/>
        <node label="Sub3"/>
    </node>
</node>

service.json
[
 {"src":"haiker", "title":"Title haiker", "desc": "description"},
 {"src":"haiker", "title":"Title haiker", "desc": "description"},
 {"src":"haiker", "title":"Title haiker", "desc": "description"},
 {"src":"haiker", "title":"Title haiker", "desc": "description"}
]

   


  评论这张
 
阅读(168)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018