知识大全 Flex 基于数据源的Menu Tree
Posted 知
篇首语:虚心使人进步,骄傲使人落后,我们应当永远记住这个真理。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Flex 基于数据源的Menu Tree相关的知识,希望对你有一定的参考价值。
Flex 基于数据源的Menu Tree 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
实现功能
由外部参数flashvars指定数据源的文件位置或render链接
在源数据上加href和target属性来控制打开窗口
可自定义父节点和子节点图标 不设置采用系统默认
直接上源码
<?xml version= encoding= utf ?><mx:Application xmlns:mx= fontFamily= simsun fontSize= layout= absolute creationComplete= menu send(); width= height= initialize= init() ><mx:Script> <![CDATA[ import ntrols Alert; import mx events ListEvent; import llections ArrayCollection; import mx rpc events ResultEvent; [Bindable] private var strUrl:String = TreeMenus xml ; [Bindable] private var menus:XML; [Bindable] [Embed( open gif )] public var openicon:Class; [Bindable] [Embed( close gif )] public var closeicon:Class; [Bindable] [Embed( leaf gif )] public var leaficon:Class; private function init():void this strUrl = this parameters url; private function LoadMenu(event:ResultEvent):void menus = XML(event result); var results:XMLList = menus node; tree dataProvider = results; //菜单图标设置 private function treeIcon(item:Object):Class var node:XML = XML(item); trace( icon: + node @icon); var str : String = node @icon; //已经设置图标 if(node hasOwnProperty( @icon )) if(node @icon == openicon ) return openicon; if(node @icon == closeicon ) return closeicon; if(node @icon == leaficon ) return leaficon; else //如果没定义icon就直接用默认的 if(!tree dataDescriptor isBranch(item)) return tree getStyle( defaultLeafIcon ); if(tree isItemOpen(item)) return tree getStyle( folderOpenIcon ); else return tree getStyle( folderClosedIcon ); return null; /** *//** * 菜单树单项点击事件 * */ private function itemClickHandler(evt:ListEvent):void var item:Object = Tree(evt currentTarget) selectedItem; if (tree dataDescriptor isBranch(item)) //tree expandItem(item !groupTree isItemOpen(item) true); else //得到节点对象 var node:XML = XML(item); //如果有属性href if(node hasOwnProperty( @href ) && node hasOwnProperty( @target )) openURL(node @href node @target); if(node hasOwnProperty( @href ) && (node hasOwnProperty( @target ) == false)) //没有指定target默认在新窗口中打开 openURL(node @href _blank ); //页面跳转的方法 private function openURL(url:String target:String):void var request:URLRequest = new URLRequest(url); navigateToURL(request target); ]]></mx:Script> <mx:HTTPService url= strUrl id= menu useProxy= false showBusyCursor= true result= LoadMenu(event) resultFormat= xml /> <mx:Tree iconFunction= treeIcon id= tree width= % height= % labelField= @label itemClick= itemClickHandler(event) /></mx:Application>
调用的时候在flashvars里面加上url=xxx
<object classid= clsid:D CDB E AE D cf B id= tree width= height= codebase= > <param name= movie value= $ctx/js/as/menu swf /> <param name= quality value= high /> <param name= bgcolor value= # ca /> <param name= allowScriptAccess value= sameDomain /> <! 指定菜单的数据源 > <param name= flashvars value= url=$ctx/user/user!renderMenu do?id=$user usid /> <embed src= tree swf quality= high bgcolor= # ca width= height= name= tree align= middle play= true loop= false quality= high allowScriptAccess= sameDomain type= application/x shockwave flash pluginspage= > </embed> </object>
其中url可以指定xml文件的位置或者render的链接
示例文件xml
<?xml version= encoding= utf ?><menus> <node label= 系统管理 icon= openicon > <node label= 用户管理 icon= closeicon target= mainFrame /> <node label= 权限管理 target= mainFrame /> <node label= 角色管理 target= mainFrame /> <node label= 域管理 target= mainFrame /> <node label= 测试 > <node label= sub folder target= mainFrame /> </node> </node> <node label= 客服 > <node label= 终端信息查询 target= mainFrame /> <node label= 客服问题 解答记录 target= mainFrame /> </node></menus>
cha138/Article/program/Java/JSP/201311/19340
相关参考
Flex与java交互之数据库数据读取 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 前几天有网
讲解Oracle数据库B-tree索引 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!假如聚簇因子过
数据回发时,维护ASP.NETTree控件位置 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!ASP
知识大全 数据结构考研分类复习真题 第六章 答案 (四)[14]
.()①tree[p]·l→p ②tree[p]·r→p ③p= ()框(A)移至Ⅲ处成为前序遍历 cha138/Article/program/
知识大全 js调用Flex中的方法并向flex中传参及flex调用js示例
js调用Flex中的方法并向flex中传参及flex调用js示例 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起
利用JavaScript和CSS制作浮动menu 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
在Dialog中使用Menu和Toolbar 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在D
基于Geodatabase数据模型的版本机制 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 一版
随着GIS技术在各个行业的应用以及数据挖掘空间数据采集技术数据库技术的迅速发展对从空间数据库发现隐含知识的需求日益增长从而出现了用于在空间数据库中进行知识发现的技术——空间数据挖掘(Spatial
基于SQL中的数据查询语句汇总 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!以下是对SQL中的数据