TitleWindow之参数传递

TitleWindow的参数传递方法有两种:

 程序代码
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx=" http://www.adobe.com/2006/mxml" layout="absolute">
    <mx:Script>
    <![CDATA[
    import mx.managers.PopUpManager;
    import mx.containers.TitleWindow;
                import flash.geom.Point;
                import flash.events.Event;
               private var point1:Point = new Point();
    private function openWin():void
    {
    var doctypes:Array = ["*.as", "*.mxml", "*.swc"]
    var login:Win3=Win3(PopUpManager.createPopUp(this, Win3 , true));  //此处的Win3为弹出窗口的名称
                login.title="我的标题";
                 login.targetComponent=tin;  //接收返回值
                 login.myArray=doctypes;
                PopUpManager.centerPopUp(login);
        }
        ]]>
    </mx:Script>
    <mx:Panel id="p1" x="97" y="65" width="800" height="600" layout="absolute" title="弹出窗口测试">
        <mx:Button id="myButton" x="257" y="302" label="Login" click="openWin()"/>
        <mx:Text id="returnValue" text="" />       
        <mx:Label x="162" y="98" text="3333" width="245"/>
         <mx:TextInput x="208" y="167" id="tin"/></mx:Panel>
 </mx:Application>
弹出窗口:
 程序代码
<?xml version="1.0"?>
<!-- containers/layouts/myComponents/ArrayEntryForm.mxml -->
<mx:TitleWindow xmlns:mx=" http://www.adobe.com/2006/mxml"
        showCloseButton="true" 
        width="200" borderAlpha="1"
        close="removeMe();">
 
    <mx:Script>
        <![CDATA[
            import mx.controls.TextInput;
            import mx.managers.PopUpManager;
            [Bindable]
            public var myArray:Array;

             public var targetComponent:TextInput;
            
            //返回内容并关闭窗口
            private function submitData():void {
                targetComponent.text = String(cb1.selectedItem);
                removeMe();
            }
        //关闭窗口
         private function removeMe():void {
                PopUpManager.removePopUp(this);
            }
        ]]>
    </mx:Script>

    <mx:ComboBox id=" cb1" dataProvider="{myArray}"/>
    <mx:HBox>
        <mx:Button label="OK" click="submitData();"/>
        <mx:Button label="Cancel" click="removeMe();"/>
    </mx:HBox>
</mx:TitleWindow> 


从同颜色的代码可以看出传递关系!

另一种方法是通过事件来传递参数:

 程序代码

<?xml version="1.0"?>
<!-- containers/layouts/MainArrayEntryFormEvents.mxml -->
<mx:Application xmlns:mx=" http://www.adobe.com/2006/mxml">

    <mx:Script>
        <![CDATA[
            import mx.managers.PopUpManager;
            import flash.events.Event;
            
            public var pop1:Win4; 
    
            public function displayForm():void {
                var doctypes:Array = ["*.as", "*.mxml", "*.swc"]
                pop1 = Win4(PopUpManager.createPopUp(this, Win4, true));
                pop1.title="Select File Type";
                pop1.showCloseButton=true;
                pop1.addEventListener("close", removeMe);
                pop1["cancelButton"].addEventListener("click", removeMe);   
                pop1["okButton"].addEventListener("click", submitData); 

    
                pop1.myArray = doctypes;
                PopUpManager.centerPopUp(pop1);
            }
            
            private function submitData(event:Event):void {
                 ti1.text = String(pop1.cb1.selectedItem);
                removeMe(event);
            }

            private function removeMe(event:Event):void {
                PopUpManager.removePopUp(pop1);
            }           
        ]]>
    </mx:Script>

    <mx:VBox> 
        <mx:TextInput id="ti1" text=""/>
    </mx:VBox>
    <mx:Button id="b1" label="Select File Type" click="displayForm();"/>
</mx:Application>



弹出窗口:

 程序代码

<?xml version="1.0"?>
<!-- containers/layouts/myComponents/ArrayEntryFormEvents.mxml -->
<mx:TitleWindow xmlns:mx=" http://www.adobe.com/2006/mxml"
    showCloseButton="true" 
    width="200" 
    borderAlpha="1">
 
    <mx:Script>
        <![CDATA[
            import mx.managers.PopUpManager;

            [Bindable]
            public var myArray:Array;

        ]]>
    </mx:Script>

    <mx:ComboBox id="cb1" dataProvider="{myArray}"/>
    <mx:HBox>
        <mx:Button id=" okButton" label="OK"/>
        <mx:Button id=" cancelButton" label="Cancel"/>
    </mx:HBox>
</mx:TitleWindow> 



这种方法似乎更为灵活!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值