flex中的AppEvnet.dispatch
发布时间:2020-12-15 03:41:44 所属栏目:百科 来源:网络整理
导读:Flex事件总线AppEvent 为了使程序各模块间达到高内聚低耦合,各模块间的事件传递一般采用事件总线方式,即将要传递的事件派发到事件总线进行广播,然后在需要接收事件的模块中进行监听,这样就能使模块结构更加清晰,从代码结构上看,也更加符合软件设计标准
Flex事件总线AppEvent
为了使程序各模块间达到高内聚低耦合,各模块间的事件传递一般采用事件总线方式,即将要传递的事件派发到事件总线进行广播,然后在需要接收事件的模块中进行监听,这样就能使模块结构更加清晰,从代码结构上看,也更加符合软件设计标准。 [ //第一个mxml中 var obj:Object={ message:"欢迎您,"+jsonobj.ROLENAME+","+jsonobj.USERNAME+"!"} AppEvent.dispatch(AppEvent.SEND_MSG_TO_SHOWLOGININFO,obj); //第二个mxml中 protected function basewidget1_creationCompleteHandler(event:FlexEvent):void { AppEvent.addListener(AppEvent.SEND_MSG_TO_SHOWLOGININFO,handler); var login:SharedObject = SharedObject.getLocal("login","/"); // if(login.data.user != null&&login.data.user != ""){ // bcLoginMessage.visible = true; // }else{ // bcLoginMessage.visible = false; // } if(!login.data.remember){ bcLoginMessage.visible = false; lblMessage.visible = false; login.clear(); }else{ bcLoginMessage.visible = false; lblMessage.visible = false; myServiceUser.checkUser(login.data.user,login.data.password); } } //切换tab protected function checkbox1_changeHandler(evt:Event):void { var chkbox:CheckBox=evt.currentTarget as CheckBox; //Alert.show("id:"+chkbox.id); switch(chkbox.id){ case "chkVideoCal": chkbox.selected?AppEvent.dispatch("Start_CalVideo"):AppEvent.dispatch("End_CalVideo"); break; case "chkVideo": chkbox.selected?AppEvent.dispatch(AppEvent.WIDGET_RUN,5):AppEvent.dispatch(AppEvent.WIDGET_CLOSE,5); break; //协同会商 case "chkXTHS": chkbox.selected?AppEvent.dispatch(AppEvent.WIDGET_RUN,1):AppEvent.dispatch(AppEvent.WIDGET_CLOSE,1); break; //热力图 case "chkReLiTu": chkbox.selected?AppEvent.dispatch(AppEvent.WIDGET_RUN,10):AppEvent.dispatch(AppEvent.WIDGET_CLOSE,10); break; } var obj:Object={ label:chkbox.label,status:chkbox.selected }; ViewerContainer.dispatchEvent(new AppEvent("tabEvent",obj)); } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |