Flex之旅:第二部分:容器与布局(5)---如何管理多个弹出的页面

想要管理多个弹出的页面,就得获得这些页面的id引用。虽然PopUpManager.addPopUp可以创建弹出页面,但是这个方法没有返回值。

幸好,PopUpManager.createPopUp方法有返回值,返回的就是当前弹出的页面对象。

如果有很多弹出页面,那么就用Array去存储每个弹出页面的对象,以方便将来的使用,


示例 代码如下:


<?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" creationComplete="addDialog()">
	<fx:Script>
		<![CDATA[
			import mx.managers.PopUpManagerChildList;
			import mx.controls.LinkButton;
			import mx.containers.Panel;
			import mx.managers.PopUpManager;
			
			public var popUpArray:Array = new Array();
			
			private function addDialog():void
			{
				var pop:Panel = (PopUpManager.createPopUp(this,	mx.containers.Panel, false,	PopUpManagerChildList.POPUP) as Panel);
				pop.title = "First Pop Up";
				pop.y = 100;
				popUpArray.push(pop);
				pop = (PopUpManager.createPopUp(this, mx.containers.Panel, false, PopUpManagerChildList.POPUP) as Panel);
				pop.title = "Second Pop Up";
				pop.y = 200;
				popUpArray.push(pop);
				pop = (PopUpManager.createPopUp(this, mx.containers.Panel, false, PopUpManagerChildList.POPUP) as Panel);
				pop.title = "Third Pop Up";
				pop.y = 300;
				popUpArray.push(pop);
			}
			
			private function returnDialog():void
			{
				var link:LinkButton = new LinkButton();
				link.label = "Hello";
				(popUpArray[selectDialog.selectedIndex] as
					Panel).addChild(link);
			}
		]]>
	</fx:Script>
<mx:HBox>
	
	<mx:ComboBox id="selectDialog" change="returnDialog()">
		<mx:dataProvider>
			<fx:Array>
				<fx:Number>0</fx:Number>
				<fx:Number>1</fx:Number>
				<fx:Number>2</fx:Number>
			</fx:Array>
		</mx:dataProvider>
	</mx:ComboBox>
	<mx:Panel>
		<mx:LinkButton label="Button"/>
	</mx:Panel>
	<mx:Panel>
		<mx:LinkButton label="Button"/>
	</mx:Panel>
</mx:HBox>
	
</s:Application>




  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值