• Flex Tree使用ArrayCollection作数据源


    原链接见Flex Tree 实践。该文章使Tree使用ArrayCollection作数据源,结合JSON与后台j2ee交互,可以大幅减少数据长度。该文章还算不错,但代码有错误。经过改正,代码如下:
    1,Node类文件
    package
    {
        import mx.collections.ArrayCollection;
        public class Node
        {
            public var id:String
            public var name:String;
            public  var children:ArrayCollection;
            public function Node()
            {
            }
        }
    }
    2,测试代码:
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application creationComplete="init()" xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
        <mx:Tree x="29" y="48" width="339" height="205" id="exampleTree"></mx:Tree>
    <mx:Script>
        <![CDATA[
        import mx.collections.ArrayCollection;
       
        var nodes:ArrayCollection  = new ArrayCollection();  //第一层树结点数据
        var nodesChildren:ArrayCollection = new ArrayCollection(); //孩子结点集合
        var aNode:Node = null;   //树结点

        function init():void{
        //先准备需要的子结点数据
        var aNode1:Node = new Node();
        aNode1.id = "00";
        aNode1.name = "孩子结点1";
        aNode1.children = null;   //当前结点如果没有孩子结点那么children设为null,如果有,则赋值为它的孩子集合,Flex Tree递归加载
        nodesChildren.addItem(aNode1);
       
        var aNode2:Node = new Node();
        aNode2.id = "01";
        aNode2.name = "孩子结点2";
        aNode2.children = null;
       
        aNode = new Node();
        nodesChildren.addItem(aNode2);
         //孩子结点数据准备完毕
       
        //准备父节点数据
        aNode.id = "0";
        aNode.name = "父结点1";
        aNode.children = nodesChildren;  //在这里将父节点的孩子结点数据加进去
        nodes.addItem(aNode);
       
        aNode = new Node();
        aNode.id = "1";
        aNode.name = "父结点2";
        aNode.children = null;   //假设父节点2没有孩子结点
        nodes.addItem(aNode);
       
        //父节点数据准备完毕
       
        //实例化一棵树
        //var exampleTree:Tree = new Tree();
        exampleTree.dataProvider=nodes;   
        exampleTree.labelField="name"; //指定显示字段
        }
        ]]>
    </mx:Script>
           
    </mx:Application>

    3,结果:
    Flex <wbr>Tree使用ArrayCollection作数据源
    使用xml做数据源的优点是可读性好、层次清楚,但是xml的数据表示效率太低。所以我认为大量的交互还是json比较好。

  • 相关阅读:
    Linux 下没有 my.cnf 文件的解决方式,完全是我自己整的,好多教程都是瞎扯的 (zhuan)
    Virtualbox虚拟机安装CentOS6.5图文详细教程(zhuan)
    virtualbox中centos系统配置nat+host only上网(zhuan)
    VirtualBox的网络配置,Host Only+NAT方式 (zhuan)
    Linux上安装Mysql后除了本机其他机器不能访问的问题(zhuan)
    VirtualBox没有64位选项,无法安装64位的解决方法(zhuan)
    CentOS查看内核版本,位数,版本号 (zhuan)
    datagrid实现单行的选择、取消
    datagrid实现行的上移和下移
    Excel 、数据库 一言不合就转换 (zhuan)
  • 原文地址:https://www.cnblogs.com/tianlangshu/p/2534527.html
Copyright © 2020-2023  润新知