Flex弹出页面不能监听到主程序中的事件

用PopupManager.createPopup弹出窗口后,不能在主应用中监听到弹出窗口中的事件。因为,从PopupManager.createPopup() 创建的显示对象DisplayObjects 不是application的子类,按照冒泡事件特性,当然添加在application对象的监听器就没法捕获此事件了。

要解决这个问题,我们需要了解一些FLEX的框架,如下图所示:

从这张图,我们可以清楚的看出,FLEX应用程序的弹出框不是application容器的子类,而是systemmananger的子类

因此在flex中我们捕获popup的事件应该这样来做:

this.systemManager.addEventListener(AuthonSuccessEvent.AUTHON_SUCCESS, onAuthonSuccessHandler);

发表评论