對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框架中任意模塊之間傳遞消息,可以用傳的參數來做爲一個標記,來指向具體的操作。