Flex 两个窗口之间的参数传递

经常有人问怎么在flex里面两个窗体里如何传递参数,下面做个简单的参数传递

 

这个是所谓的"父窗口"代码:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script>
	<![CDATA[
		import mx.binding.utils.BindingUtils;
		import mx.managers.PopUpManager;
		
		//打开窗口 并将参数传过去
		private function newForm():void{
			var p:title=new title();
			p.text=mytext.text;
			p.callback=closeHandler;
			PopUpManager.addPopUp(p,this);
		}
		
		//关闭打开窗口时处理
		private function closeHandler(text:String):void{
			mytext.text=text;
		}
	]]>
</mx:Script>
	<mx:TextInput id="mytext" name="mytext" x="87" y="67"/>
	<mx:Button x="295" y="67" label="Button" click="newForm()"/>	
</mx:Application>

 

 

下面是所谓的 title.mxml "子窗口"

<?xml version="1.0" encoding="utf-8"?>
<mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml" width="400" height="300" initialize="init()">
	<mx:Script>
		<![CDATA[
			import mx.controls.Alert;
			import mx.controls.TextInput;
			import mx.managers.PopUpManager;
			public var text:String;
			
			public var callback:Function;//定义关闭窗口后调用的函数
					
			private function init():void{
				mytext.text=text;	
			}
			
			//关闭时传参数给父窗窗口
			private function onclose():void{				
				if(callback!=null){
					callback(mytext.text);
				}
				PopUpManager.removePopUp(this);
			} 
		]]>
	</mx:Script>
	<mx:TextInput id="mytext" x="92" y="51"/>
	<mx:Button x="187" y="171" label="Button" click="onclose()"/>
</mx:TitleWindow>

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值