Flex弹出窗口

Tre*_*roy 4 apache-flex air actionscript-3 flex4

我在父页面中创建模态弹出画布窗口.当我关闭弹出窗口时,我们如何在父屏幕中获得子弹出窗口刚刚关闭的通知.有什么事吗?

Bri*_*sio 5

显示弹出窗口的代码:

var popup:MyPopup = new popup:MyPopup();

popup.addEventListener(CloseEvent.CLOSE, function(evt) { 
    PopUpManager.removePopUp(popup);
});

PopUpManager.addPopUp(popup, this, true);
Run Code Online (Sandbox Code Playgroud)

MyPopup课堂上,您将有一个关闭弹出窗口的按钮.只需挂钩click事件即可发布"CLOSE"事件:

<s:Button Label="X" click="dispatchEvent(new CloseEvent(CloseEvent.CLOSE));" />
Run Code Online (Sandbox Code Playgroud)

我更喜欢这种机制而不是让MyPopup对象调用PopUpManger.removePopUp(如@Fank建议的那样),因为它将MyPopup组件耦合到PopUpManager我不喜欢的组件.我更喜欢用户MyPopup决定如何使用该组件.

但老实说,这是两个非常相似的机制来执行相同的最终目标.