• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    如何在Renderer中设置属性 Renderer中设置属性的方法实例

    ClassFactory的properties妙用

    1)UITextField与label,使用label显不出来

    复制代码 代码如下:

    package com.citigroup.presentation.csa
    {
        import flash.events.MouseEvent;

        import mx.controls.Label;
        import mx.controls.advancedDataGridClasses.AdvancedDataGridHeaderRenderer;
        import mx.core.UITextField;
        import mx.events.FlexEvent;

        public class GroupHeaderRenderer extends AdvancedDataGridHeaderRenderer
        {
            public var children:Array=[];
            public var expand:Boolean=true;
            private var l:UITextField;
            public function GroupHeaderRenderer()
            {
                super();
                l=new UITextField();
                l.text="[-]";
                l.addEventListener(MouseEvent.CLICK,toggle);
                        addChild(l);
                this.addEventListener(FlexEvent.CREATION_COMPLETE,init);

            }
            private function init(event:FlexEvent):void{
                if(expand){
                    l.text="[-]";
                }else{
                    l.text="[+]";
                    toggleChildren(false);
                }
                this.removeEventListener(FlexEvent.CREATION_COMPLETE,init);
            }
            override public function set data(value:Object):void{
                super.data = value;
                this.setStyle("color","0xF9F088");
                this.setStyle("fontWeight","bold");
                this.setStyle("textAlign","left");
            }
            override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void{
                        super.updateDisplayList(unscaledWidth,unscaledHeight);
                label.x=0;
                l.x=label.x+label.width;
                        l.y=label.y;
            }

            private function toggle(event:MouseEvent):void{
                if(l.text=="[+]"){
                    l.text="[-]";
                    toggleChildren(true);
                }else{
                    l.text="[+]";
                    toggleChildren(false);
                }
            }
            private function toggleChildren(visible:Boolean):void{
                if(children.length=1) return;
                for(var i:int=1;ichildren.length;i++){
                    children[i].visible=visible;
                }
            }
        }


    public function genAdgColumn(headerText:String,dataField:String,width:Number=100):AdvancedDataGridColumn{
                    var col:AdvancedDataGridColumn=new AdvancedDataGridColumn();
                    col.headerText=headerText;
                    col.dataField=dataField;
                    col.width=width;
                    return col;
                }
                public function genAdgColumnGroup(headerText:String,dataField:String,children:Array,expand:Boolean=true):AdvancedDataGridColumnGroup{
                    var group:AdvancedDataGridColumnGroup=new AdvancedDataGridColumnGroup();
                    group.headerText=headerText;
                    group.dataField=dataField;
                    span style="color:#ff0000;">var cf:ClassFactory=new ClassFactory(GroupHeaderRenderer);
                    cf.properties ={'children':children,'expand':expand};
                    group.headerRenderer=cf;                 
                    group.children=children;
                    return group;
                }

    上一篇:FLEX HashMap遍历并取到需要的值
    下一篇:flex复选框和下拉列表的几种用法整理
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    如何在Renderer中设置属性 Renderer中设置属性的方法实例 如,何在,Renderer,中,设置,