加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

FLEX中Tree默认展开所有节点

发布时间:2020-12-15 01:25:21 所属栏目:百科 来源:网络整理
导读:这里分两种情况,一种是数据源在MXML文件中,如: view plain mx:XML ? id = "treeXML" ? format = "e4x" ?? ???????? root ?? ???????????? node ? label = "通知通告管理" ? data = "0" ???????????????? node ? label = "申报通知" ? data = "1" ? / ?? ?

这里分两种情况,一种是数据源在MXML文件中,如:

view plain
  1. <mx:XML?id="treeXML"?format="e4x">??
  2. ????????root>??
  3. ????????????node?label="通知通告管理"?data="0"????????????????node?label="申报通知"?data="1"?/>??
  4. ????????????????node?label="填表须知"?data="1"?/>??
  5. node?label="申报指南"?data="1"?node?label="立项通告"?data="1"?node?label="其它通知通告"?data="1"?node?label="系统帮助"?data="1"?????????????</nodenode?label="用户管理"?data="0">????????
  6. node?label="申报单位用户管理"?data="2"?node?label="归口部门用户管理"?data="3"?node?label="审批用户管理"?data="4"?node?label="系统设置"?data="0"node?label="部门设置"?data="5"?/>???
  7. node?label="项目类别设置"?data="5"?node?label="区域设置"?data="5"?node?label="单位类别设置"?data="5"?node?label="企业类型设置"?data="5"?node?label="经济类型设置"?data="5"?node?label="学历设置"?data="5"?node?label="企业信用等级设置"?data="5"?>???
  8. mx:XML>??

?

页面调用:

?

mx:Tree?id="myTree"?dataProvider="{treeXML}"?labelField="@label"?showRoot="false"?width="200"?height="100%"?/>??

?

这种情况下,只要在页面载入时creationComplete="initApp()"然后用

view plain
    <mx:Script>??
  1. ????<!--[CDATA[??
  2. ??????????
  3. ????????private?function?initApp():void?{??
  4. ????????????????for?each(var?item:XML?in?this.myTree.dataProvider)??
  5. ????????????????????this.myTree.expandChildrenOf(item,true);??
  6. ????????}??
  7. ??????????
  8. ????]]-->??
  9. </mx:Script>??

?

但是还有一种情况,当数据源不包含在MXML文件中时,也就是当数据源是从后台程序获取时,直接用expandChildrenOf(item,true)不起作用,换一种方式。

?

mx:HTTPService?id="getTree"?showBusyCursor="true"?useProxy="false"?resultFormat="e4x"?url="users/getTree.asp"?result="resultHandler(event)"?fault="faultHandler(event)"???
  • mx:Tree?id="myTree"?dataProvider="{getTree.lastResult}"?width="200"?height="100%"?/>??
  • ?

    以上可以有很多方法来从后台数据库中获取值,此处只是简单的讲述一下。然后在Script里面写

    var?xmlData?:?XML;??
  • ??????
  • function?resultHandler(event:ResultEvent):void?????{??
  • ????xmlData?=?XML(event.result);??
  • ????myTree.showRoot?=?false;??
  • ????myTree.dataProvider?=?xmlData;??
  • ????myTree.labelField?=?"@label";??
  • ????myTree.callLater(expandTree);??
  • }??
  • ??????????????
  • function?expandTree():void{??
  • ?????myTree.expandChildrenOf(xmlData?,?}??
  • (编辑:李大同)

    【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

      推荐文章
        热点阅读