カスタムイベント送出のdispatchEvent()が使えないとき~、のメモ。

Actionscript3で、カスタムクラスを作成していてdispatchEvent()を使用したくても使えない。
なぜか?
EventDispatchクラスを継承してないから。(extends EventDispatch)

でも表示に関わるクラスなど大抵はMovieClipやSpriteを既に継承しているはず。
AS3はひとつのクラスしか継承できないから、どうするか?

インターフェースしてやる。(implements IEventDispatcher)
http://help.adobe.com/ja_JP/AS3LCR/Flash_10.0/flash/events/IEventDispatcher.html
このページの一番下に実装例があるんだけど問題があってその辺はこちらを参照。
http://labs.karappo.net/kwdr/index.php?itemid=193

実際にコレやるだけで動いてる。間違いない。

※追記
MovieClipやSpriteはEventDispatcherを継承しているから、実は上記の手間はいらないんだよね。
これ書いたときMovieClip継承しているのになぜかdispatchEvent()でエラーが出ていたからやってみたんだけど。。。
いま書き直したら(インターフェース消した)エラー出ないしイベントも発行されてる。
なんだったんだろう?