`
superytmf
  • 浏览: 19353 次
  • 性别: Icon_minigender_1
  • 来自: 广州
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

FLEX中Tree默认展开所有节点

阅读更多
这里分两种情况,一种是数据源在MXML文件中,如:
<mx:XML id="treeXML" format="e4x"> 
        <root> 
            <node label="通知通告管理" data="0"> 
                <node label="申报通知" data="1" /> 
                <node label="填表须知" data="1" /> 
                <node label="申报指南" data="1" /> 
                <node label="立项通告" data="1" /> 
                <node label="其它通知通告" data="1" /> 
                <node label="系统帮助" data="1" /> 
            </node> 
            <node label="用户管理" data="0">        
                <node label="申报单位用户管理" data="2" /> 
                <node label="归口部门用户管理" data="3" /> 
                <node label="审批用户管理" data="4" /> 
            </node> 
            <node label="系统设置" data="0"> 
            <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" /> 
                <node label="企业信用等级设置" data="5" /> 
            </node>   
        </root> 
</mx:XML>

页面调用:
<mx:Tree id="myTree" dataProvider="{treeXML}" labelField="@label" showRoot="false" width="200" height="100%" />

这种情况下,只要在页面载入时creationComplete="initApp()"然后用
<mx:Script>  
    <!--[CDATA[  
          
        private function initApp():void {  
                for each(var item:XML in this.myTree.dataProvider)  
                    this.myTree.expandChildrenOf(item,true);  
        }  
          
    ]]-->  
</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里面写

private var xmlData : XML;       
private function resultHandler(event:ResultEvent):void     {  
    xmlData = XML(event.result);  
    myTree.showRoot = false;  
    myTree.dataProvider = xmlData;  
    myTree.labelField = "@label";  
    myTree.callLater(expandTree);  
}                
private function expandTree():void{  
     myTree.expandChildrenOf(xmlData , true);  


注:expandChildrenOf ();
打开或关闭指定项目下的所有树项目。如果设置 dataProvider 之后立即调用 expandChildrenOf(),则您可能看不到正确的行为。您应该等待对组件进行验证或调用 validateNow() 方法。
分享到:
评论
1 楼 cnsuifeng 2011-01-13  
谢谢  正好用到

相关推荐

    flex中 Tree树节点内部拖动实例(此实例限制了什么节点可以拖动及拖动到什么位置)

    在本文中,我们将详细探讨如何在Flex的Tree组件中实现节点的拖放操作,并且限制可拖动的节点以及拖动的目标位置。 首先,我们需要了解Flex Tree组件的基本用法。Tree组件用于显示层次结构的数据,每个节点代表数据...

    Flex Tree 中Checkbox

    Flex Tree 是一种在Adobe Flex框架中用于展示层次结构数据的组件。它允许用户通过节点来探索和操作数据,而Checkbox的引入则为用户提供了一种多选功能,使得用户可以选择多个树节点。在“Flex Tree 中Checkbox”的...

    flex中tree和checkbox结合使用的插件

    在Flex开发中,Tree组件和Checkbox控件的结合使用是一个常见的需求,特别是在构建具有层级结构并需要用户进行多选操作的界面时。本插件专为此目的设计,它允许用户在树形结构中通过复选框来选择或取消选择节点,从而...

    flex tree控件

    默认情况下,Flex Tree控件为每个节点提供预设的图标,如展开/折叠箭头。要去除这些默认图标,我们需要在NodeRenderer类中进行定制。创建一个新的MXML或ActionScript类,继承自mx.controls.treeClasses....

    flex 中tree渲染checkbox

    在Flex中,Tree组件默认并不直接支持显示复选框。为了实现这个功能,我们需要自定义TreeItemRenderer类。这个类将负责创建和管理每个节点上的复选框视图。通过继承mx.controls.treeClasses.TreeItemRenderer类并重写...

    flex Tree checkbox 修改过后的

    Flex Tree控件是一种用于展示层次结构数据的UI组件,它允许用户通过节点展开和折叠来探索数据。在Flex中,为了增加更多的交互性,我们有时需要在Tree的每个节点前添加复选框(checkbox),这使得用户能够进行多选...

    Flex Tree增加虚线连接

    在Flex Tree中,连接线通常用来表示节点间的父子关系,而"Flex Tree增加虚线连接"则涉及到如何为这些连接线添加虚线样式,以满足特定的视觉效果和设计需求。 在Flex Tree中实现虚线连接,我们需要理解以下几个关键...

    Flex Tree 的右键菜单事件

    在Flex编程中,Tree组件是一种常用的用户界面元素,用于展示层次结构的数据。它允许用户通过展开和折叠节点来浏览和操作数据。右键菜单则为用户提供了一种方便的交互方式,用户可以通过点击鼠标右键触发自定义的上...

    flex tree 修改icon方法

    在Flex编程环境中,Tree组件是一种常用的用户界面元素,它用于展示层次结构的数据。当我们需要自定义Tree中的节点图标时,可能会遇到如何根据数据源动态改变图标的问题。标题"flex tree 修改icon方法"正好指出了这一...

    Flex Tree组件的实线连接线

    Flex Tree组件是Adobe Flex框架中的一个关键元素,用于展示层次结构数据。在默认情况下,Tree组件的节点之间通常使用虚线进行连接,以表示它们之间的层级关系。然而,有时候我们可能需要自定义这些连接线,比如将...

    flex3 Tree右键菜单

    在Flex3中,Tree组件是用于展示层次结构数据的关键元素,它可以用来构建具有可扩展节点的树形视图。在Flex3的开发中,我们经常需要为Tree组件添加右键菜单,以提供更多的用户交互功能。右键菜单的实现不仅增加了用户...

    Flex 下拉框为Tree的ComboBox

    在Flex中,我们可以自定义ComboBox的dropdown属性,将默认的List替换为Tree。Tree组件可以很好地呈现层次结构,每个节点可以有子节点,并且可以通过展开和折叠来控制显示的内容。我们需要创建一个新的类,继承自...

    flex的combBox添加tree

    9. 添加到项目:最后,你需要将这些组件和文件导入到你的Flex项目中,确保所有的依赖关系正确无误。 综上所述,实现"flex的combBox添加tree"涉及了Flex组件使用、ActionScript编程、数据处理、事件驱动等多个方面的...

    flex tree的简单使用

    3. **节点显示**:默认情况下,Tree会显示数据提供者中每一项的字符串表示。但我们可以自定义节点的显示方式,通过实现`ITreeDataDescriptor`接口或者使用`dataProvider`的`labelFunction`属性来定义一个函数,该...

    Flex右键菜单 flex tree 右键菜单 源码

    在Flex中,右键菜单是用户交互的重要组成部分,特别是在数据可视化和树形结构的数据展示中,如Flex Tree组件。本文将深入探讨如何在Flex中实现右键菜单,并结合提供的源码进行分析。 1. Flex右键菜单: Flex中的...

    flex combobx中使用tree

    这时,我们可以使用一个特殊的实现,即在ComboBox中嵌入Tree组件,这正是“flex combobx中使用tree”这个话题的核心。 Flex中的Tree组件用于显示多级、分层的数据,通常用于展现目录结构、组织架构等。而将Tree与...

    flex Tree xml

    例如,如果想要默认展开所有节点,可以这样做: ```actionscript for each (var node:XML in xmlList) { myTree.expandItem(myTree.dataProvider.getItemAt(0), true); // 展开第一个节点 } ``` 总的来说,"flex ...

    FLEX ——完美的 TREE

    TREE组件是FLEX中用于展示层次结构数据的关键元素,它允许用户以树形结构查看和操作数据,这在许多场景下都非常有用,比如文件系统浏览、组织结构展示等。 QQ,中国最流行的即时通讯软件,其界面中就大量使用了类似...

    Flex Tree XML

    在Flex开发中,Tree组件是一种常用的用户界面元素,它用于展示层次结构的数据。"Flex Tree XML"这个主题,就是关于如何使用XML数据源来填充和操作Flex中的Tree组件。在这个小例子中,我们将深入探讨如何将XML数据...

    flex iFrame的tree控件连接到相应的网页

    在“flex iFrame的tree控件连接到相应的网页”这个示例中,我们主要探讨如何利用Flex的Tree控件与iFrame组件协同工作,实现用户在Tree上选择不同的节点时,iFrame加载对应的网页内容。 首先,我们需要了解Flex Tree...

Global site tag (gtag.js) - Google Analytics