0

ROLL_OVER イベントリスナーに問題があります。マウスカーソルでムービークリップ内の空の領域に入ると、ROLL_OVER イベントがトリガーされます。しかし、マウスカーソルが色付きの領域にある場合にのみ、そのイベントがトリガーされるようにします。

より明確にするために:「O」文字について考えてください。マウスカーソルがO文字の空の領域(Oの内側)の間にある場合、イベントはトリガーされません。マウス カーソルが黒い領域にある場合にのみトリガーする必要があります。

どうすればこれを実装できますか?

ありがとう

-オザン

問題は@Ethan Kennerlyのおかげで解決されました

人々が私と同じ問題を抱えているのを助けるために、いくつかのことを追加したいだけです. 私の状況では、マウスが大陸の上にあるときに大陸を光らせようとしました。ROLL_OVER/MOUSE_OVER イベントリスナーを使用して、マウスがそれらの上にあるかどうかを確認しました。しかし、Ethan Kennerly から提供されたデータを使用して、別の方法を作成しました。Ethan Kennerly のソリューションでは、マウスが透明な領域から大陸の領域に入った場合、ROLL_OVER および MOUSE_OVER イベント リスナーは入力ごとに 1 回しかトリガーされないため、ぼかし効果が得られないため、各大陸のムービークリップで MOUSE_MOVE イベント リスナーを使用しました。そして、このステートメントについて:

if (isPixelTransparent(DisplayObject(event.currentTarget), new Point(stage.mouseX, stage.mouseY)) {
    return;
}

「ROLL_OUTまたはMOUSE_OUT」イベントリスナー関数にあるものをすべて追加し、それらすべてをこのステートメント内に追加します。ただし、ROLL_OUT または MOUSE_OUT 関数は削除しないでください。

4

2 に答える 2