猿问

如下内容,请问如何实现的,请教?

Application下有两个组件A和B,A组件下有一个click事件,并对应有一个函数处理该事件。B组件有两个状态,我的目的是通过A的事件出发B状态的改变。要求写出实现方法,最好用代码举例的方式,在这里先谢谢大家了!
这个函数是在A中么?改变B的状态 如果用currentState='',但是是b的状态应该用什么格式啊?

小怪兽爱吃肉
浏览 103回答 2
2回答

噜噜哒

如果我是楼主会把B状态的改变写成一个public 的方法,把a组件下的click事件也写成方法,把鼠标侦听全放进application,或者单独拿一类。回到话题,你的事情可以用2次事件发送解决。新开一个自定义事件类:1 package {2 import flash.events.Event;3 public class myEvent extends Event {4 public static const CLIPA_CLICK:String="clipa_click";public static const CLIPA_CLICKTOB:String="clipa_clicktob";6 public function myEvent() {7 super(CLIPA_CLICK);8 }15 }16 }a,application,b中都要导入myEventa类中click回调函数中加 this.dispatchEvent(new myEvent(CLIPA_CLICK));在application类的构造函数或构造函数引用的方法中加a.addEventListener(myEvent.CLIPA_CLICK,sentToB);然后加个方法,注意b要是最上面声明的,不能在函数内声明private function sentToB(e:myEvent):void {b.dispatchEvent(new myEvent(CLIPA_CLICKTOB));}在b类中加 this.addEventListener(myEvent.CLIPA_CLICKTOB,callBackFunc);---其中 callBackFunc就是你要执行的状态改变了。

繁星点点滴滴

你这个问题是flex相当基本的问题!
随时随地看视频慕课网APP
我要回答