对flex的消息机制了解不清楚的话,在viewer3.0中自定义消息有点无从下手,稍微琢磨琢磨后还可以,写起来就简单多了。
1.在appEvent.as中定义自己的消息类型:
/** * 右键弹出窗体消息 */ public static const RIGHT_CLICK_SHOWINFOWINDOW = "rightClickShowInfoWindow";
2.在需要侦听的模块中注册,以及定义响应函数:
AppEvent.addListener(AppEvent.RIGHT_CLICK_SHOWINFOWINDOW,rightclickShowInfoWindow);
3.在需要派发消息的模块或操作中添加消息派发:
AppEvent.dispatch(AppEvent.RIGHT_CLICK_SHOWINFOWINDOW,"ecologyCityInfo");
第二个参数是传的参数,AppEvent可以在viewer框架中任意模块之间传递消息,可以用传的参数来做为一个标记,来指向具体的操作。