Flex4中间PopupManager分类似模仿桌面用户界面弹出窗体,有些人还喜欢JS弹出屏幕操作,底层接口灰色禁用掉。

创建需要要喷射形式的文件,码如下面:

<?xml version="1.0" encoding="utf-8"?>
<mx:TitleWindow xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
layout="vertical" title="弹出窗体"
width="600" height="400" showCloseButton="true"
close="PopUpManager.removePopUp(this);">
<fx:Script>
<![CDATA[
import mx.managers.PopUpManager;
]]>
</fx:Script>
<s:Group width="100%">
<s:Label text="2014-5-14 09:28:26"/>
</s:Group>
<s:TextArea id="textArea" width="100%" height="100%"/>
</mx:TitleWindow>


showCloseButton=true 显示关闭button并处理Close时间。


測试程序例如以下:

<?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"
width="100%" height="100%"
initialize="init()">
<fx:Script><![CDATA[
import mx.events.CloseEvent;
import mx.controls.Alert;
import mx.managers.PopUpManager;

private function showAlert(event:MouseEvent):void {
Alert.show('这是一个弹出窗体!', '弹出窗体測试');
}

private function showPopUp(event:MouseEvent):void {
//PopUpManager 相关初始化工作。先创建,调整位置。安排监听事件。
var titleWindow:TestTitleWindow1 = TestTitleWindow1(
PopUpManager.createPopUp(this, TestTitleWindow1, true));
titleWindow.x = 50;
titleWindow.y = 50;
titleWindow.addEventListener(CloseEvent.CLOSE, onCloseTTW);
}
//弹出窗体关闭时间函数
private function onCloseTTW(event:CloseEvent):void {
var ttw:TestTitleWindow1 = TestTitleWindow1(event.target);
TextArea1.text = ttw.textArea.text;
}
]]></fx:Script>
<s:layout>
<s:VerticalLayout paddingLeft="10" paddingTop="10"
paddingRight="10" paddingBottom="10"/>
</s:layout>
<s:Button label="測试Alert" click="showAlert(event)"/>
<s:Button label="測试TestTitleWindow" click="showPopUp(event)"/>
<s:Label text="TestTitleWindow:"
fontWeight="bold"/>
<s:TextArea id="TextArea1" width="100%"
height="100%"/>
</s:Application>


相关解释在凝视中,在ShowPopUp方法中可见创建弹出窗体的方法以及回调。ActionScript创建弹出窗口的代码显示了出众的设计JavaScript。