欢迎来到代码驿站!

当前位置:首页 >

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

时间:2021-05-08 09:07:44|栏目:|点击:

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;i<children.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;
            }

上一篇:winfoams.dll,auto.exe,450381EC.EXE病毒的手动清除方法

栏    目:

下一篇:docker 容器上编译 go 程序提示找不到文件问题

本文标题:如何在Renderer中设置属性 Renderer中设置属性的方法实例

本文地址:http://www.codeinn.net/misctech/117351.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有