dispatchEventでちょっとハマった。
木曜日, 24 6月 2010
最近はひたすらにFlash三昧です。
とにかく早いうちにサイトのリニューアルをしたいと思いフォトモザイクの改修作業をやっていました。
で、今回は今までやってみたかったけどよく意味がわかってなかったdispatchEventを使って陥ったエラーについてです。
フォトモザイクでベースの画像の解析をするクラスを作ってて、解析が終わったときにdispatchEventで終了イベントを発生させて次の処理へ・・・っていうのを作ってたんですが、なぜか終了イベントが発生せず。。。
解析自体はできてるのはtraceで確認できてるし、イベントを発生させる関数も実行させてる。
なぜ?
っと、まあいろいろ調べた結果。。。イベントの登録が間に合ってなかったみたいです。
obj=new Class();
obj.addEventListener(Class.イベント名, function);
まじっすか?!っと思って、先輩PGの方に聞いてみると
「昔はよくあったねえ」
とのこと。
あー、Flashからプログラム始めた俺には知らない話でしたTT
なので、dispatchEventでイベントを取りたいときはコンストラクタからつなげて実行でなく、newして関数をつくって実行すべし!
obj=new Class();
obj.addEventListener(Class.イベント名, function);
obj.ClassFunction; //イベント発生までが入っている処理関数
いやあ、今回も勉強になった・・・ってこんなことしてちゃ終わらない~(汗