例えばボタンインスタンスに1フレーム目にボタンのノーマル状態、
2フレーム目にアクティブ状態、
3フレーム目にボタンイベントが効かなくなった状態、
をそれぞれ配置します。
で、それぞれにイベントを追加します。
btn.addEventListener(MouseEvent.ROLL_OVER, RoverHandler);
btn.addEventListener(MouseEvent.ROLL_OUT, RoutHanlder);
private function RoutHanlder(e:MouseEvent):void {
e.target.gotoAndStop(1);
}
private function RoverHandler(e:MouseEvent):void {
e.target.gotoAndStop(2);
}
ってかんじで。
さて、先ほど条件分岐してボタンイベントが効かなくなったときには
btn.mouseEnabled = false;
とするのですが、ボタンが効かなくなった瞬間、ROLL_OUTのイベントも一緒に実行するみたいです。
どうやらマウスがロールアウトしたと判断するみたいですね。
回避するにはmouseEnabledと一緒にremoveEventListenerでイベントを削除したら思い通りにいきました。
この記事にトラックバックする