在Flex3中的2列中显示复选框

时间:2012-06-29 16:57:10

标签: actionscript-3 flex checkbox flex3 repeater

我正在使用Flex3和它的新手。 我正在使用转发器来创建复选框。 我不希望垂直对齐所有复选框,因为它们有很多。 我想在2列中显示复选框以节省一些空间? 我可以对x和y属性做一些魔术。 但有没有简单的方法呢?

1 个答案:

答案 0 :(得分:1)

一种方法是将一对CheckBox包装在HBox中并重复该操作。像这样:

<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
    <mx:Script>
        <![CDATA[
        import mx.collections.ArrayCollection;
        [Bindable]
        private var dp:ArrayCollection = new ArrayCollection([1, 2, 3, 4]);
        [Bindable]
        private var checkBoxLabels:ArrayCollection = new ArrayCollection([
                                                    "Red",   "Blue",
                                                    "Green", "Yellow",
                                                    "Purple","Brown",
                                                    "Gray",  "Black"]);
        ]]>
    </mx:Script>
    <mx:VBox>
        <mx:Repeater id="myRep" dataProvider="{dp}">
            <mx:HBox>
                <mx:CheckBox label="{checkBoxLabels[myRep.currentIndex*2]}"/>
                <mx:CheckBox label="{checkBoxLabels[myRep.currentIndex*2+1]}"/>
            </mx:HBox>
        </mx:Repeater>
    </mx:VBox>
</mx:WindowedApplication>