Flex开发小结(2)Flex弹出窗口
发布时间:2020-12-15 04:05:07 所属栏目:百科 来源:网络整理
导读:1、PopUpManager (singleton) 类用于创建新的顶级窗口,还可以在位于所有其他可见窗口上面的层次中放置或删除这些窗口。有关分层的说明,请参见 SystemManager。此类适用于 ComboBox 控件中的弹出对话框、菜单和下拉列表等类似组件。 2、PopUpManager 还可
1、PopUpManager (singleton) 类用于创建新的顶级窗口,还可以在位于所有其他可见窗口上面的层次中放置或删除这些窗口。有关分层的说明,请参见 SystemManager。此类适用于 ComboBox 控件中的弹出对话框、菜单和下拉列表等类似组件。
2、PopUpManager 还可以提供模态,使弹出窗口下方的窗口无法接收鼠标事件;当用户在窗口外部单击鼠标时,它还可以提供一个事件,供开发人员选择退出窗口还是警告用户。
示例如下:当点击按钮时,弹出窗口。
<?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" minWidth="955" minHeight="600"> <fx:Script> <![CDATA[ import mx.containers.Panel; import mx.managers.PopUpManager; protected function button1_clickHandler(event:MouseEvent):void { var panel:Panel = new Panel(); panel.width = 300; panel.height = 300; panel.title = "这是PopUpMananger弹出窗口"; panel.x = 20; panel.y = 20; PopUpManager.addPopUp(panel,this,true); } ]]> </fx:Script> <fx:Declarations> <!-- 将非可视元素(例如服务、值对象)放在此处 --> </fx:Declarations> <s:Button label="点击" click="button1_clickHandler(event)"/> </s:Application> 结果如下图:
?
?
3、PopUpManager的
addPopUp方法:
4、PopUpManager的centerPopUp方法:
使位于调用
?
createPopUp()
?或
?
addPopUp()
?方法期间使用的任何窗口上面的弹出窗口居中显示。?
示例如下:
<?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"> <fx:Script> <![CDATA[ import mx.containers.Panel; import mx.managers.PopUpManager; protected function button1_clickHandler(event:MouseEvent):void { var panel:Panel = new Panel(); panel.width = this.width*0.5; panel.height = this.height*0.5; panel.title = "这是PopUpMananger弹出窗口"; //panel.x = 20; //panel.y = 20; PopUpManager.addPopUp(panel,true);//true表示弹出的是模态窗口 PopUpManager.centerPopUp(panel);//使弹出窗口居中显示 } ]]> </fx:Script> <fx:Declarations> <!-- 将非可视元素(例如服务、值对象)放在此处 --> </fx:Declarations> <s:Button label="点击" click="button1_clickHandler(event)"/> </s:Application> 结果如下图:
?
5、PopUpManager的removePopUp方法:
删除由
?
createPopUp()
?或
?
addPopUp()
?方法弹出的弹出窗口。
另外,如果是非模态的,可能在点击程序其它部分的时候窗口就不见了,但是它并没有移除,怎么让它出来呢?这个时候就需要 PopUpManager? 的另外一个方法: bringToFront(),这个方法可以把窗口放到最前。你可以控制,让程序第一次的时候是创建对话框,以后就是把窗口放到最前。
6、TitleWindow类:
TitleWindow 类将 Panel 扩展为包含一个关闭按钮和移动区域。
TitleWindow 设计为一个弹出窗口。请勿在 MXML 中将 TitleWindow 创建为应用程序的一部分,而是,通常根据 TitleWindow 类创建自定义 MXML 组件,然后使用? 示例如下: <?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"> <fx:Script> <![CDATA[ import mx.containers.Panel; import mx.managers.PopUpManager; import mx.managers.PopUpManagerChildList; import spark.components.TitleWindow; protected function button1_clickHandler(event:MouseEvent):void { /** var panel:Panel = new Panel(); panel.width = this.width*0.5; panel.height = this.height*0.5; panel.title = "这是PopUpMananger弹出窗口"; //panel.x = 20; //panel.y = 20; PopUpManager.addPopUp(panel,false);//true表示弹出的是模态窗口 PopUpManager.centerPopUp(panel);//使弹出窗口居中显示 **/ var tw:TitleWindow = new TitleWindow(); tw.title = "My Title"; tw.width = 300; tw.height = 200; PopUpManager.addPopUp(tw,true); PopUpManager.centerPopUp(tw); } ]]> </fx:Script> <fx:Declarations> <!-- 将非可视元素(例如服务、值对象)放在此处 --> </fx:Declarations> <s:Button label="点击->弹出窗口" click="button1_clickHandler(event)"/> </s:Application> 结果如下: (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |