- ベストアンサー
CLICKイベントとMOUSE_DOWNイベントの併用について
- クリックイベントとマウスダウンイベントの併用に制約はありますか?
- 画像のギャラリーで、クリックイベントとマウスダウンイベントを併用してボタンの色と画像を変更したい場合、ハンドラ関数が実行されないようです。
- 併用ができない場合、どのように実装しているのか教えてください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
書かれていらっしゃることが確認できません。 状況をもっとシンプルにして原因を追及すべきではないでしょうか。 ActionScript 3.0 の「新規ドキュメント」を作成し フレーム1 にコピペして,即, 「制御」→「ムービープレビュー」で確認するスクリプト例↓。 //---------------------------------- //適当に矩形のスプライトを用意 var sp:Sprite = new Sprite(); sp.graphics.beginFill(0xFFCC00); sp.graphics.drawRect(10, 10, 100, 50); addChild(sp); //書かれていらっしゃるまったくそのままのスクリプト addEventListener(MouseEvent.MOUSE_DOWN, mDown, false, 0, true); addEventListener(MouseEvent.MOUSE_UP, mUP, false, 0, true); addEventListener(MouseEvent.CLICK, mClick, false, 0, true); //各リスナー関数の定義 function mDown(e:MouseEvent):void{ trace("mDown実行"); } function mUP(e:MouseEvent):void{ trace("mUP実行"); } function mClick(e:MouseEvent):void{ trace("mClick実行"); } //---------------------------------- 矩形をクリック時の出力結果↓ ----------------------- mDown実行 mUP実行 mClick実行 ----------------------- 全て実行されます。 =============== 今回の内容とはおそらく別件ですが なぜ addEventListener の引数をそんなに多く設定されていらっしゃるのか,その意図もわかりません。 何か意味があるのでしたら良いとは思いますが 動かない原因がどこにあるのかわからないのですから その辺もシンプルにデフォルトすべきだと思います。 (第5引数を true にすると ガベージコレクション の対象(動かない原因)になってしまいますよ。)