根据用户输入动态添加表单的多个实例 - Flex

时间:2010-03-04 16:45:21

标签: flex dynamic instances

我正在尝试创建一个基于用户输入的表单,以确定动态生成多少个表单。

我有一个包含1-4的组合框的基本状态。根据用户选择我希望下一个状态生成表单数量。因此,如果您的用户选择2并单击下一步 - 将显示2个表单副本。

我只是想知道这是否可能我会怎样做或者如果有人知道任何例子?

1 个答案:

答案 0 :(得分:1)

这当然是可能的。这是一个粗略的例子,可以为您提供有关您可以做什么的一些想法。 :)

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
    <mx:Script>
        <![CDATA[
            import mx.collections.ArrayCollection;

            [Bindable]
            public var dataProviderCombo:ArrayCollection = new ArrayCollection(
                [ {label:"1 Form", data:1}, 
                  {label:"2 Forms", data:2}, 
                  {label:"3 Forms", data:3},
                  {label:"4 Forms", data:4} ]);

            private function GenerateForms():void
            {
                myFormContainer.removeAllChildren();

                for (var i:int = 1; i <= myComboBox.selectedItem.data; i++)
                {
                    var formToAdd:MyCustomForm = new MyCustomForm();
                    myFormContainer.addChild(formToAdd);
                }
            }
        ]]>
    </mx:Script>
    <mx:ComboBox id="myComboBox" x="0" y="10" dataProvider="{dataProviderCombo}" change="GenerateForms();"></mx:ComboBox>
    <mx:HBox id="myFormContainer" y="40">

    </mx:HBox>
</mx:Application>