flex动态生成checkbox

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" x="46" y="42" creationComplete="initApp()">
    <mx:Script>
        <![CDATA[
            import mx.controls.CheckBox;
            
            private function initApp():void
            {
                var items:Array = ["apple","boy","cat","dog","eye","fox"];
                
                for(var i:int=0;i<items.length;i++)
                {
                    var checkBox:CheckBox = new CheckBox();
                    checkBox.id = "checkBox" + i.toString();
                    checkBox.label = items[i].toString();
                    checkBox.setStyle("fontSize",14);
                    checkBox.x = 100;
                    checkBox.y = (i + 1) * 25;
                    checkBox.addEventListener(Event.CHANGE,checkBox_change);
                    this.addChild(checkBox);//也可是this.gridItem.addChild(checkBox)
                }   
            }
            
            private function checkBox_change(e:Event):void
            {
                if(e.target.selected)
                {
                    lbItems.text = lbItems.text+e.target.label+" ";
                }
                else
                {
                    lbItems.text = lbItems.text.replace(e.target.label,"");
                }
            }
        ]]>
    </mx:Script>
    <mx:Label id="lbItems" x="56" y="245" text="Your choice is: " width="345" fontSize="14"/>

</mx:Application>



================项目一部分

<?xml version="1.0" encoding="utf-8"?>
<s:BorderContainer xmlns:fx="http://ns.adobe.com/mxml/2009"
          xmlns:s="library://ns.adobe.com/flex/spark"
          xmlns:mx="library://ns.adobe.com/flex/mx"
          creationComplete="initApp(event)"  borderColor="#67c4ed" borderWeight="3"
          cornerRadius="5"
          width="800" height="378">
    <fx:Script>
        <![CDATA[
            import com.sybuild.platform.entity.result.ListInfoResult;
            import com.sybuild.sdxt.cspz.dataprovider.SysParamDP;
            
            import mx.events.FlexEvent;
            import mx.rpc.events.FaultEvent;
            import mx.rpc.events.ResultEvent;
            
            import spark.components.CheckBox;
            
            private var _sysparamDp:SysParamDP = SysParamDP.getInstance();
            
            protected function initApp(event:FlexEvent):void
            {
                getSysParamList();
            }
            protected function getSysParamList():*{
                try{
                    this._sysparamDp.querySysParamList(getSysParamListSuccess,getSysParamListFalut);
                }catch(ex:Error){
                }
            }
            
            public function getSysParamListSuccess(event:ResultEvent):void{
                this._sysparamDp.removegetSysParamListListener(getSysParamListSuccess,getSysParamListFalut);
                if (event.result == null){
                    return;
                }
                if (!(event.result is ListInfoResult)){
                    return;
                }
                var syslist:ListInfoResult=event.result as ListInfoResult;
                if (!syslist.success){
                    return;
                }
                if (syslist.res == null || syslist.res.length == 0){
                    return;
                }
                for(var i:int=0;i<syslist.res.length;i++)
                {
                    var checkBox:CheckBox = new CheckBox();
                    checkBox.id = "checkBox" + i.toString();
                    checkBox.label = syslist.res.getItemAt(i).val;
                    checkBox.setStyle("fontSize",14);
                    checkBox.x = 100;
                    checkBox.y = (i + 1) * 25;
                    checkBox.addEventListener(Event.CHANGE,checkBox_change);
                    this.addChild(checkBox);//也可是this.gridItem.addChild(checkBox)
                }   
            }
            
            public function getSysParamListFalut(event:FaultEvent):void{
                this._sysparamDp.removegetSysParamListListener(getSysParamListSuccess,getSysParamListFalut);
            }
            
            private function checkBox_change(e:Event):void
            {
                if(e.target.selected)
                {
                    lbItems.text = lbItems.text+e.target.label+" ";
                }
                else
                {
                    lbItems.text = lbItems.text.replace(e.target.label,"");
                }
            }
            
        ]]>
    </fx:Script>
    <mx:Label id="lbItems" x="25" y="256" text="您选择了配置参数为: " width="495" fontSize="14" fontFamily="宋体"/>
</s:BorderContainer>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值