flex PopUpManager类
PopUpManager 类 PopUpManager 类ActionScript 类名称mx.managers.PopUpManager
PopUpManager 类的方法摘要
PopUpManager.createPopUp() 创建弹出窗口。
PopUpManager.deletePopUp() 删除由调用PopUpManager.createPopUp() 而创建的弹出窗口。
PopUpManager.createPopUp(parent, class, modal [, initobj, outsideEvents])
参数:parent 对弹出窗口所基于的窗口的引用。
class 对要创建的对象的类的引用。
modal 一个布尔值,它指示该窗口是(true) 否(false) 是模式
initobj 一个包含初始化属性的对象。此参数是可选的。
outsideEvents 一个布尔值,指示在用户单击窗口以外的区域时是(true) 否(false) 触发事件。此参数是可选的。
1.PopUpManager--createPopUp与addPopUp区别
createPopUp:是上来先设置好弹出方式,然后在new出来一个TitleWindow的对象,然后通过此对象设置他的变现形式。
addPopUp:是先new出来对象,设置好表现形式,然后在选择弹出来的方式。
一定要注意new对象与弹出方式的先后顺序。
addPopUp代码
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, this, true);
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>
createPopUp代码:
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>
2.弹出窗口为DataGrid添加新数据
(1)Note.as
package
{
public class Note
{
public var author:String;
public var topic:String;
public var description:String;
}
}
(2)AddNote.mxml
<?xml version="1.0" encoding="utf-8"?>
<mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute" width="348" height="218"
title="Add A Note">
<mx:Metadata>
[Event(name="SaveNote")]
</mx:Metadata>
<mx:Script>
<![CDATA[
import mx.managers.PopUpManager;
//PopUpManager.createPopUp() 创建弹出窗口
private function close():void
{
PopUpManager.removePopUp(this);
}
private function save():void
{
this.dispatchEvent(new Event("SaveNote"));
}
]]>
</mx:Script>
<mx:Label text="Author" x="35" y="10"/>
<mx:TextInput id="author" width="150" x="84" y="8"/>
<mx:Label text="Topic" y="36" x="42"/>
<mx:TextInput id="topic" width="150" x="84" y="34"/>
<mx:Label text="Description" y="62" x="10"/>
<mx:TextArea id="description" width="234" height="77" x="84" y="61"/>
<mx:Button label="Cancel" click="close()" x="193" y="146"/>
<mx:Button label="Save" click="save()" x="264" y="146"/>
</mx:TitleWindow >
(3)Test.mxml
<?xml version="1.0" encoding="utf-8"?>
<mx:Application
xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute"
width="500" height="300"
creationComplete="init()">
<mx:Script>
<![CDATA[
import mx.managers.PopUpManager;
import mx.collections.ArrayCollection;
[Bindable]
private var notes:ArrayCollection = new ArrayCollection();
private var addNoteScreen:AddNote;
private function init():void
{
addNoteScreen = new AddNote();
addNoteScreen.addEventListener("SaveNote", saveNote);
}
private function addNote():void
{
PopUpManager.addPopUp(addNoteScreen, this, true);
PopUpManager.centerPopUp(addNoteScreen);
addNoteScreen.author.text = "";
addNoteScreen.topic.text = "";
addNoteScreen.description.text = "";
}
private function saveNote(e:Event):void
{
var note:Note = new Note();
note.author = addNoteScreen.author.text;
note.topic = addNoteScreen.topic.text;
note.description = addNoteScreen.description.text;
notes.addItem(note);
PopUpManager.removePopUp(addNoteScreen);
}
]]>
</mx:Script>
<mx:Panel title="Notes"
width="100%" height="100%"
layout="vertical" horizontalAlign="right"
paddingTop="3" paddingLeft="3" paddingRight="3" paddingBottom="3">
<mx:DataGrid dataProvider="{notes}" width="100%" height="100%">
<mx:columns>
<mx:DataGridColumn headerText="Author" dataField="author" width="80"/>
<mx:DataGridColumn headerText="Topic" dataField="topic" width="100"/>
<mx:DataGridColumn headerText="Description" dataField="description"/>
</mx:columns>
</mx:DataGrid>
<mx:Button label="Add Note" click="addNote()"/>
</mx:Panel>
</mx:Application>
分享到:
相关推荐
在Flex编程中,"弹出窗口代码"是一个常见的需求,特别是在设计用户交互界面时,我们经常需要实现点击按钮后打开一个新的窗口或者对话框来展示更多信息或进行特定操作。本篇将详细讲解如何在Flex中创建一个点击按钮后...
博文链接:https://hacker47.iteye.com/blog/182262
Virtualization.A.Managers.Guide epub format
软件项目管理系列The.Software.Project.Managers.Bridge.to.Agility.May.2008
- 管理前端内容:如弹出窗口、鼠标指针、工具提示等。 - `totalLevelSystemManager`属性:指向当前程序的SystemManager实例,如果Flex程序被嵌入,该属性将指向加载它的SystemManager实例。 - UIComponents的`...
1. a book Developing Flex Applications 2. a web page viewer for doc88 ebt 3. a DDA downloader for doc88.com CONTENTS PART I: Presenting Flex CHAPTER 1: Introducing Flex. . . . . . . . . . . . . . ...
`SystemManager`不仅管理程序的生命周期,还负责前端显示的各个方面,如弹出窗口、鼠标指针和工具提示。每个UI组件都有一个`systemManager`属性,指向当前程序的`SystemManager`实例。在多层嵌套的Flex程序中,`...
3. **展示勇气与决断力**:在面临困难决策时展现出勇气和决断力,能够赢得团队的信任和支持。 4. **持续学习与发展**:不断学习新知识和技术,提升自己的专业能力和领导力。 5. **培养人际关系**:建立广泛的人际...
在IT行业中,Flex是一种基于ActionScript 3.0的开源框架,主要用于构建富互联网应用程序(RIA)。它提供了强大的用户界面组件库,使开发者能够创建具有交互性和动态效果的Web应用。拓扑图是一种用于表示网络、系统或...
Flex3提供了一个`mx.managers.DragManager`类来处理拖放操作。首先,我们需要定义源对象(可以是树中的节点)为可拖动,然后指定目标区域。当用户开始拖动时,启动拖放过程,而在目标区域释放时处理放下事件。例如...
例如,`mx.controls` 包含了大量的 UI 控件,`mx.managers` 包含布局管理器等。 - **调试技巧**:利用 Flex SDK 自带的调试工具进行高效调试。例如,使用 Flex Debug Launcher (`adl`) 来启动调试模式的应用程序,并...
import mx.managers.PopupManager; var newUser:NewUser = new NewUser(); [Bindable] var flag:String = "get"; [Bindable] var dg_selectedID:String = ""; private function showNewUser():void { ...
import mx.managers.CursorManager; // 变量声明 private var file:FileReference; private var byteArray:ByteArray; private var bitmapData:BitmapData; // 可绑定变量 [Bindable] public var picName:...
在IT行业中,Flex是一种基于ActionScript和MXML的开源框架,用于构建富互联网应用程序(RIA)。这个主题聚焦于“Flex拖拽控件效果”,这是一项常见的用户交互功能,允许用户通过鼠标操作移动UI元素,提升应用的易用...
import mx.managers.SystemManager; import flash.events.FullScreenEvent; private function init():void { systemManager.stage.addEventListener(FullScreenEvent.FULL_SCREEN, fullScreenHandler); ...
最后,在主MXML文件中调用`Docu_browas`类,可以创建一个弹出窗口实例,并显示上述用户界面。 ```actionscript private function btn_test_click(event:Event):void { PopUpManager.centerPopUp(Docu_browas...
import mx.managers.FlexDisplayFactory; public class LazyLoadingExample extends VBox { private var _panel:Panel; public function LazyLoadingExample() { super(); this.addEventListener(FlexEvent....
在Flex SDK中,这个类位于mx.managers.systemClasses目录下。要让应用在最小化时进入系统托盘,我们需要覆盖Application类的systemChromeChange()方法,并在其中添加逻辑。 ```actionscript public class Custom...