【发布时间】:2011-02-23 21:41:03
【问题描述】:
我正在创建一个 AIR 应用程序,mainapp.mxml 有一个按钮和 VBOX。单击按钮时,child.mxml 应显示在 VBOX 中。
如果代码也在 flex 中,我将不胜感激,因为我可以很容易地修改标签。
谁能帮我怎么做!提前致谢
【问题讨论】:
标签: apache-flex actionscript air
我正在创建一个 AIR 应用程序,mainapp.mxml 有一个按钮和 VBOX。单击按钮时,child.mxml 应显示在 VBOX 中。
如果代码也在 flex 中,我将不胜感激,因为我可以很容易地修改标签。
谁能帮我怎么做!提前致谢
【问题讨论】:
标签: apache-flex actionscript air
为按钮添加一个点击处理程序,在该处理程序中创建一个 child 实例并将其添加到 VBox:
<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 来处理这个问题。该按钮只会更改状态,并且 VBox 将包含在您设置的任何状态中:
<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,而不必担心自己做。
免责声明:我没有测试上面的代码,所以命名空间可能是关闭的:)
【讨论】: