PopUpManager--createPopUp与addPopUp区别

本文介绍如何使用Flex框架创建自定义弹出窗口(TitleWindow),包括两种方法:一是直接创建TitleWindow并设置属性,二是先设置弹出方式再创建TitleWindow对象。这两种方法在实现弹窗时有不同的顺序。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Java代码
  1. <?xml version= "1.0"  encoding= "utf-8" ?>  
  2. <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"   
  3.         layout="vertical"   
  4.         verticalAlign="middle"   
  5.         backgroundColor="white"   
  6.         creationComplete="init()" >  
  7.   
  8.     <mx:Script>  
  9.         <![CDATA[  
  10.             import  mx.controls.Label;  
  11.             import  mx.events.CloseEvent;  
  12.             import  mx.containers.TitleWindow;  
  13.             import  mx.managers.PopUpManager ;  
  14.   
  15.             private  var titleWindow:TitleWindow;  
  16.   
  17.             private  function init(): void  {  
  18.                 var label:Label = new  Label();  
  19.                 label.text = "Hello world" ;  
  20.   
  21.                 titleWindow = new  TitleWindow();  
  22.                 titleWindow.title = "Custom title" ;  
  23.                 titleWindow.showCloseButton = true ;  
  24.                 titleWindow.width = 240 ;  
  25.                 titleWindow.height = 180 ;  
  26.                 titleWindow.addEventListener(CloseEvent.CLOSE, titleWindow_close);  
  27.                 titleWindow.addChild(label);  
  28.   
  29.                 PopUpManager .addPopUp(titleWindow, thistrue );  
  30.                 PopUpManager .centerPopUp(titleWindow);  
  31.             }  
  32.   
  33.             private  function titleWindow_close(evt:CloseEvent): void  {  
  34.                 PopUpManager .removePopUp(titleWindow);  
  35.             }  
  36.         ]]>  
  37.     </mx:Script>  
  38.   
  39.     <mx:Button label="Launch TitleWindow"  click= "init()"  />  
  40.   
  41. </mx:Application>  
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
        layout="vertical"
        verticalAlign="middle"
        backgroundColor="white"
        creationComplete="init()">

    <mx:Script>
        <![CDATA[
            import mx.controls.Label;
            import mx.events.CloseEvent;
            import mx.containers.TitleWindow;
            import mx.managers.PopUpManager

;

            private var titleWindow:TitleWindow;

            private function init():void {
                var label:Label = new Label();
                label.text = "Hello world";

                titleWindow = new TitleWindow();
                titleWindow.title = "Custom title";
                titleWindow.showCloseButton = true;
                titleWindow.width = 240;
                titleWindow.height = 180;
                titleWindow.addEventListener(CloseEvent.CLOSE, titleWindow_close);
                titleWindow.addChild(label);

                PopUpManager

.addPopUp(titleWindow, this, true);
                PopUpManager

.centerPopUp(titleWindow);
            }

            private function titleWindow_close(evt:CloseEvent):void {
                PopUpManager

.removePopUp(titleWindow);
            }
        ]]>
    </mx:Script>

    <mx:Button label="Launch TitleWindow" click="init()" />

</mx:Application>

 

createPopUp 代码:

Java代码
  1. <?xml version= "1.0"  encoding= "utf-8" ?>  
  2. <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"   
  3.         layout="vertical"   
  4.         verticalAlign="middle"   
  5.         backgroundColor="white"   
  6.         creationComplete="init()" >  
  7.   
  8.     <mx:Script>  
  9.         <![CDATA[  
  10.             import  mx.managers.PopUpManagerChildList;  
  11.             import  mx.controls.Label;  
  12.             import  mx.events.CloseEvent;  
  13.             import  mx.containers.TitleWindow;  
  14.             import  mx.managers.PopUpManager ;  
  15.   
  16.             private  var titleWindow:TitleWindow;  
  17.   
  18.             private  function init(): void  {  
  19.                 var label:Label = new  Label();  
  20.                 label.text = "Hello world" ;  
  21.                 titleWindow = new  TitleWindow();  
  22.                 titleWindow = TitleWindow(PopUpManager .createPopUp (this ,TitleWindow, true ));  
  23.                 titleWindow.title = "Custom title" ;  
  24.                 titleWindow.showCloseButton = true ;  
  25.                 titleWindow.width = 240 ;  
  26.                 titleWindow.height = 180 ;  
  27.                 titleWindow.addChild(label);  
  28.                 titleWindow.addEventListener(CloseEvent.CLOSE, titleWindow_close);  
  29.                                PopUpManager .centerPopUp(titleWindow);  
  30.             }  
  31.   
  32.             private  function titleWindow_close(evt:CloseEvent): void  {  
  33.                 PopUpManager .removePopUp(titleWindow);  
  34.             }  
  35.         ]]>  
  36.     </mx:Script>  
  37.   
  38.     <mx:Button label="Launch TitleWindow"  click= "init()"  />  
  39.   
  40. </mx:Application>  
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
        layout="vertical"
        verticalAlign="middle"
        backgroundColor="white"
        creationComplete="init()">

    <mx:Script>
        <![CDATA[
        	import mx.managers.PopUpManagerChildList;
            import mx.controls.Label;
            import mx.events.CloseEvent;
            import mx.containers.TitleWindow;
            import mx.managers.PopUpManager

;

            private var titleWindow:TitleWindow;

            private function init():void {
                var label:Label = new Label();
                label.text = "Hello world";
                titleWindow = new TitleWindow();
				titleWindow = TitleWindow(PopUpManager

.createPopUp

(this,TitleWindow,true));
				titleWindow.title = "Custom title";
                titleWindow.showCloseButton = true;
                titleWindow.width = 240;
                titleWindow.height = 180;
				titleWindow.addChild(label);
                titleWindow.addEventListener(CloseEvent.CLOSE, titleWindow_close);
                               PopUpManager

.centerPopUp(titleWindow);
            }

            private function titleWindow_close(evt:CloseEvent):void {
                PopUpManager

.removePopUp(titleWindow);
            }
        ]]>
    </mx:Script>

    <mx:Button label="Launch TitleWindow" click="init()" />

</mx:Application>

 createPopUp :是上来先设置好弹出方式,然后在new出来一个TitleWindow的对象,然后通过此对象设置他的变现形式。

addPopUp:是先new出来对象,设置好表现形式,然后在选择弹出来的方式。

一定要注意new对象与弹出方式的先后顺序。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值