flex用单例关闭窗口
来源:互联网 发布:本西蒙斯捏脸数据 编辑:程序博客网 时间:2024/04/28 20:32
在flex开发的时候,弹出窗口有时候可由父窗口或当前窗口关闭,如果想点其它地方的时候,也能关闭窗口,那么可以在窗口打开时,用单例的某个属性(例:widgetObj)来保存当前窗口,当需要在其它地方关闭窗口的时候,调用这个单例,用PopUpManager.removePopUp(GlobeConfig.getInstance().widgetObj as IFlexDisplayObject);,并将属性widgetObj设置为null即可。
先定义一个单例,保存当前窗口类GlobeConfig.as/GlobeConfig.mxml
<?xml version="1.0" encoding="utf-8"?><s:Group 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[ private static var instance:GlobeConfig; //用来保存当前窗口 public var widgetObj:Object =null; public static function getInstance():GlobeConfig{ if(null == instance){ instance = new GlobeConfig(); instance.init(); } return instance; } ]]> </fx:Script> <fx:Declarations> <!-- 将非可视元素(例如服务、值对象)放在此处 --> </fx:Declarations></s:Group>
在弹出窗口的时候,将窗口赋给widgetObj。
var w1:VideoOpenWindow1;w1 = new VideoOpenWindow1();//将前当窗口赋给widgetObj !!!GlobeConfig.getInstance().widgetObj=w1;w1.videoIDArray = videoIDArray;w1.parentObj = this;PopUpManager.addPopUp(w1,this,false);PopUpManager.centerPopUp(w1);w1.x = Capabilities.screenResolutionX/3;w1.y = Capabilities.screenResolutionY/10;
关闭窗口的时候用:
protected function closeWindow():void{ //map.infoWindow.hide(); //如果用到地图的话 if(GlobeConfig.getInstance().widgetObj!=null){ PopUpManager.removePopUp(GlobeConfig.getInstance().widgetObj as IFlexDisplayObject); GlobeConfig.getInstance().widgetObj=null; }}
如果不想每个mxml中写一个closeWindow()方法,可以新建一个文件ClosePopWindow.as,以后用到它的时候,这样调用:
new com.flexdms.pojo.sys.ClosePopWindow().closePopWindow();
ClosePopWindow.as
package com.flexdms.pojo.sys{ import com.flexdms.manage.GlobeConfig; import mx.core.IFlexDisplayObject; import mx.managers.PopUpManager; [Bindable] public class ClosePopWindow { public function ClosePopWindow() { } public function closePopWindow():void { if(GlobeConfig.getInstance().widgetObj!=null){ PopUpManager.removePopUp(GlobeConfig.getInstance().widgetObj as IFlexDisplayObject); GlobeConfig.getInstance().widgetObj=null; } } }}
转载请注明:http://blog.csdn.net/paincupid/article/details/44645425
0 0
- flex用单例关闭窗口
- Flex在窗口之外单击关闭弹出窗口的方法
- Flex 父窗口监听子窗口关闭并刷新DataGrid
- flex中保存cookie,关闭IE窗口,清除cookie
- 关闭窗口
- 关闭窗口
- 关闭窗口
- [关闭窗口]
- 关闭窗口
- 关闭窗口
- 关闭窗口
- 关闭窗口
- 关闭窗口
- 刷新窗口 关闭窗口
- 打开窗口、关闭窗口
- flex 中如何用AS 调用 JS 实现关闭当前窗口
- flex实现窗口关闭时放大和缩小的效果 Zoom
- flex 关闭浏览器
- tar命令的详细解释
- CSS布局小技巧
- 一台电脑运行两个tomcat,6与7
- 公开课机器学习笔记(5)逻辑回归
- 如何去除Visual Studio 中文下的红线
- flex用单例关闭窗口
- session入门
- ORACLE wm_concat函数
- 什么是以太网?
- 使用JavaMail发送邮件和接受邮件
- destoon php中如何禁止IP访问
- Android系统字体规范与应用探索
- Android资源库
- UIView部分圆角与旋转