04 17 2009

0

使用PopUpManager创建子窗口

分类: Flex3 标签: Flex3 创建窗口 阅读: 302

在Flex3中创建子窗口的例子:

首先建立父窗口

XML/HTML代码
  1. <?xml version="1.0"?>  
  2. <!-- containers\layouts\MainMyLoginFormCast.mxml -->  
  3. <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">  
  4.   
  5.     <mx:Script>  
  6.         <![CDATA[ 
  7.           import mx.managers.PopUpManager; 
  8.           import mx.core.IFlexDisplayObject; 
  9.           import myComponents.MyLoginForm; 
  10.  
  11.           // Additional import statement to use the TitleWindow container. 
  12.           import mx.containers.TitleWindow; 
  13.  
  14.           private function showLogin():void { 
  15.             // Create the TitleWindow container. 
  16.             var helpWindow:TitleWindow =  
  17.           TitleWindow(PopUpManager.createPopUp(this, MyLoginForm, false)); 
  18.  
  19.             // Add title to the title bar. 
  20.             helpWindow.title="Enter Login Information"; 
  21.  
  22.             // Make title bar slightly transparent. 
  23.             helpWindow.setStyle("borderAlpha", 0.9); 
  24.  
  25.             // Add a close button. 
  26.             // To close the container, your must also handle the close event. 
  27.             helpWindow.showCloseButton=true; 
  28.           } 
  29.         ]]>  
  30.     </mx:Script>  
  31.       
  32.     <mx:VBox width="300" height="300">    
  33.         <mx:Button click="showLogin();" label="Login"/>  
  34.     </mx:VBox>  
  35. </mx:Application>  

子窗口的代码

XML/HTML代码
  1. <?xml version="1.0"?>  
  2. <!-- containers\layouts\myComponents\MyLoginForm.mxml -->  
  3. <mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml">  
  4.       
  5.     <mx:Script>  
  6.         <![CDATA[ 
  7.             import mx.managers.PopUpManager; 
  8.              
  9.             private function processLogin():void { 
  10.                 // Check credentials (not shown) then remove pop up. 
  11.                 PopUpManager.removePopUp(this); 
  12.             } 
  13.         ]]>  
  14.     </mx:Script>  
  15.   
  16.     <mx:Form>  
  17.         <mx:FormItem label="User Name">  
  18.             <mx:TextInput id="username" width="100%"/>  
  19.         </mx:FormItem>   
  20.         <mx:FormItem label="Password">  
  21.             <mx:TextInput id="password"   
  22.                 displayAsPassword="true"   
  23.                 width="100%"/>  
  24.         </mx:FormItem>   
  25.     </mx:Form>  
  26.     <mx:HBox>   
  27.         <mx:Button click="processLogin();" label="OK"/>   
  28.         <mx:Button   
  29.             label="Cancel"  
  30.             click="PopUpManager.removePopUp(this);"/>   
  31.     </mx:HBox>   
  32. </mx:TitleWindow>  

使子窗口居中可以使用

PopUpManager.centerPopUp(MyLoginForm);

{$page}
1 条记录 1/1 页
登陆
分类