在平常的工作中,常有这样的需求:点一个模块中触发一个事件,需要在另一个页面进行监听。例如,当前模块中执行按钮的点击操作后另一个模块执行另一个操作,那么当前页面中的点击事件如何被另一个模块知晓呢?这就可以使用flex事件分发。
//当前模块
private function buttonClick(event:MouseEvent):void
{
var appEvent:AppEven = new AppEvent("youThingName",false);
EventDispatcher(FlexGlobal.topLevelApplication).dispatchEvent(appEvent);
}
//接收模块
EventDispatcher(FlexGlobal.topLevelApplication).addEventListener("youThingName",执行函数)