我正在創建一個AIR應用程序,mainapp.mxml有一個按鈕和VBOX。當點擊按鈕時,應該在VBOX中顯示child.mxml。從AS代碼調用一個MXML
如果代碼也是flex的,我們將不勝感激,因爲這對我來說很容易修改標籤。
任何人都可以幫助我請怎麼做!在此先感謝
我正在創建一個AIR應用程序,mainapp.mxml有一個按鈕和VBOX。當點擊按鈕時,應該在VBOX中顯示child.mxml。從AS代碼調用一個MXML
如果代碼也是flex的,我們將不勝感激,因爲這對我來說很容易修改標籤。
任何人都可以幫助我請怎麼做!在此先感謝
添加一個單擊處理程序的按鈕,在該處理程序創建子的一個實例,並將其添加到垂直框中:
<mx:Button id="myButton" label="My Button" click="myButton_clickHandler(event)"/>
而且處理程序:
function myButton_clickHandler(event:Event):void {
var child:Child = new Child();
myVBox.addChild(child);
}
如果您使用Flex 4,你也可以使用states
來處理這個問題。該按鈕只會改變狀態,並且垂直框將被納入任何一個國家你設置:
<fx:Script>
<![CDATA[
private function changeState():void {
currentState = (currentState == "default") ? "showVBox" : "default";
}
]]>
</fx:Script>
<s:states>
<s:State name="default" />
<s:State name="showVBox" />
</s:states>
<mx:VBox id="myVBox" includeIn="showVBox" />
<mx:Button label="Show/Hide VBox" click="changeState()" />
在我的例子,點擊按鈕簡單地交換「默認」和「showVBox」之間的狀態。這使得玩家可以爲你添加/刪除VBox,而不用擔心你自己做。
免責聲明:我沒有測試上面的代碼,這樣的命名空間可以被關閉:)
它的工作表示感謝。但是,當我執行代碼ArgumentError時出現一個小警告:錯誤#2025:提供的DisplayObject必須是調用者的子項。 \t at flash.display :: DisplayObjectContainer/getChildIndex() \t at mx.managers :: SystemManager/getChildIndex()[E:\ dev \ 4.x \ frameworks \ projects \ framework \ src \ mx \ managers \ SystemManager。如:1665] \t at mx.managers.systemClasses :: ActiveWindowManager/mouseDownHandler()[E:\ dev \ 4.x \ frameworks \ projects \ framework \ src \ mx \ managers \ systemClasses \ ActiveWindowManager.as:471] – anu 2011-02-25 21:15:32