0

Flexビルダー4.5を使用しています。私の Web アプリケーションには 5 つのコンボがあります。コンボ 1 はスタッフと生徒としてロードされます。コンボ 2 は部門をロードし、コンボ 3 はスタッフ名をロードし、コンボ 4 は生徒のバッチをロードし、コンボ 5 は生徒の名前をそれぞれロードします。

最初のコンボで生徒を選択すると、コンボ 4 とコンボ 5 が動的に上に移動するはずです。これについてアドバイスをお願いします...

4

1 に答える 1

0

コントロールの座標を操作することはお勧めできません。その代わりに、ViewStackコントロールを使用して、最初のコンボの項目に従って選択したインデックスを変更します。

したがって、ビューの表現をより細かく制御でき、将来の変更に関する問題が少なくなります。

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
           xmlns:s="library://ns.adobe.com/flex/spark" 
           xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">

<s:VGroup x="10" y="10">
    <s:ComboBox id="cbMain" selectedIndex="0">
        <s:ArrayList>
            <fx:Object label="Staff"/>
            <fx:Object label="Student"/>
        </s:ArrayList>
    </s:ComboBox>

    <mx:ViewStack id="vsMain" width="200" height="200" selectedIndex="{cbMain.selectedIndex}">
        <s:NavigatorContent id="ncStaff" width="100%" height="100%">

            <s:VGroup>
                <s:ComboBox id="cbStaffDep" selectedIndex="0">
                    <s:ArrayList>
                        <fx:Object label="Department01"/>
                        <fx:Object label="Department02"/>
                    </s:ArrayList>
                </s:ComboBox>

                <s:ComboBox id="cbStaffName" selectedIndex="0">
                    <s:ArrayList>
                        <fx:Object label="StaffName01"/>
                        <fx:Object label="StaffName02"/>
                    </s:ArrayList>
                </s:ComboBox>
            </s:VGroup>
        </s:NavigatorContent>

        <s:NavigatorContent id="ncStudent" width="100%" height="100%">

            <s:VGroup>
                <s:ComboBox id="cbStudentBatch" selectedIndex="0">
                    <s:ArrayList>
                        <fx:Object label="Batch01"/>
                        <fx:Object label="Batch02"/>
                    </s:ArrayList>
                </s:ComboBox>

                <s:ComboBox id="cbStudentName" selectedIndex="0">
                    <s:ArrayList>
                        <fx:Object label="StudentName01"/>
                        <fx:Object label="StudentName02"/>
                    </s:ArrayList>
                </s:ComboBox>
            </s:VGroup>

        </s:NavigatorContent>
    </mx:ViewStack>

</s:VGroup>

</s:Application>
于 2013-03-02T11:43:09.810 に答える