Popup好像是Flex中的孤儿,对它的处理都要采用特殊的方法。
传出Event要采用dispatch(New Event('..',true)),将Event Bubble up以后,由systemManager来Listen才可以听得到。但如果Popup不光要表达一个Event呢,比如在Popup中的表单中填好以后,怎么把数据发出去呢?
答案:采用CustomEvent包含自定义的数据
同一个CustomEvent还可以通过Event的type来用于不同的目的,比如同一个包含用户数据的Event可以用来
更姓用户信息,也可以用来重置用户密码。
new CustomEvent(CustomEvent.UPDATE,data)
new CustomEvent(CustomEvent.RESET,data)
package chenxiao.study {
? import flash.events.Event;
? public class UpdateUserEvent extends Event {
??? public static const UPDATE_USER:String = "UpdateUserEvent";
??? public static const RESET_PASSWORD:String = "ResetPasswordEvent";
??? public var data:String;
??? public function UpdateUserEvent(
??????? type:String,?
??????? data:String,
??????? bubbles:Boolean = true,
??????? cancelable:Boolean = true) {
????? super(type,bubbles,cancelable);
????? this.data = data;
??? }
??? public override function clone():Event {
????? return new UpdateUserEvent(type,data);
??? }
? }
}
转载:http://blog.sina.com.cn/s/blog_538d55be0100i7ud.html