Flex中使用repeater显示一组checkbox控件

 

 

 

此贴纯属转载

< ? xml version = "1.0" encoding = "utf-8" ? >
< !-- http:/ / blog. flexexamples. com/ 2008/ 05/ 29/ displaying-checkbox-controls-using-the-repeater-in-flex/ -->
< mx:Application xmlns:mx= "http://www.adobe.com/2006/mxml"
        layout= "vertical"
        verticalAlign= "middle"
        backgroundColor= "white" >

    < mx:Script >
        < ![ CDATA[
            import mx. controls. Alert;
            import mx. controls. CheckBox;

            private function button_click( evt:Event) : void {
                var selArr:Array = [ ] ;
                var idx:int;
                var len:int = arr. length;
                for ( idx= 0; idx< len; idx+ + ) {
                    if ( checkBox[ idx] . selected) {
                        selArr. push( checkBox[ idx] . label) ;
                    }
                }

                var title:String = selArr. length + " of " + len + " item(s) selected." ;
                var message:String = selArr. join( "\n" ) ;
                Alert. show( message, title) ;
            }

            private function doFilter( element:* , index:int, arr:Array) : Boolean {
                return element. selected;
            }

            private function checkBox_change( evt:Event) : void {
                var ch:CheckBox = evt. currentTarget as CheckBox;
                Alert. show( ch. getRepeaterItem( ) . data) ;
            }
        ] ] >


    < / mx:Script >

    < mx:Array id= "arr" >
        < mx:Object label= "Red" data= "red" / >
        < mx:Object label= "Orange" data= "haloOrange" / >
        < mx:Object label= "Yellow" data= "yellow" / >
        < mx:Object label= "Green" data= "haloGreen" / >
        < mx:Object label= "Blue" data= "haloBlue" / >
    < / mx:Array>

    < mx:Panel id= "panel" width= "50%" paddingLeft= "10" verticalGap= "10" >
        < mx:Repeater id= "checkBoxRepeater" dataProvider= "{arr}" >
            < mx:CheckBox id= "checkBox"
                    label= "{checkBoxRepeater.currentItem.label}"
                    data= "{checkBoxRepeater.currentItem.data}"
                    change= "checkBox_change(event);" / >
        < / mx:Repeater>
        < mx:ControlBar horizontalAlign= "right" >
            < mx:Button id= "button"
                    label= "Click me"
                    emphasized= "true"
                    click= "button_click(event);" / >
        < / mx:ControlBar>
    < / mx:Panel>

< / mx:Application>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值