0

こんにちは、私は actionscript の初心者なので、どんな助けでも大歓迎です。

基本的に私は2つのレイヤーを持つ映画を持っています.1つは目を閉じてもう1つは開いています。

そのため、機能は、マウスがムービーの上に移動すると目を閉じた状態でムービーが開始し、マウスがムービーを離れると再び閉じるようにする必要があります。

これは私が現在持っているコードですが、機能していません:

package 
{

import flash.display.MovieClip;
import flash.events.MouseEvent;

eyes_closed.addEventListener(MouseEvent.MOUSE_OVER, hideEyes);
eyes_closed.addEventListener(MouseEvent.MOUSE_OUT, openEyes);

function hideEyes(event:MouseEvent):void {
  eyes_open.visible = true;
}

function openEyes(event:MouseEvent):void {
  eyes_closed.visible = true;
}

}

私は何を間違っていますか?

4

4 に答える 4

1

あなたがしようとしていることをするためのいくつかのオプションがあります.1つの簡単な解決策は次のとおりです:

スプライトの 2 つのレイヤーを作成します。1 つは目を閉じた状態で、もう 1 つは目を開いた状態です (おそらく既に作成済みです)。

一番下のスプライト (eyes_closed) に 2 つのイベント リスナーを追加します。

これは重要です - あなたの eyes_open スプライト (2 つのうちの一番上のスプライト) に追加します

eyes_open.mouseEnabled = false
eyes_open.mouseChildren = false
于 2013-09-24T11:14:52.387 に答える
0

目を隠すのを忘れました。

function hideEyes(event:MouseEvent):void {
  eyes_open.visible = true;
  eyes_closed.visible = false;
}

function openEyes(event:MouseEvent):void {
  eyes_closed.visible = true;
  eyes_open.visible = false;
}

別のオプション: を使用してレイヤーの順序を変更するsetChildIndex

于 2013-09-25T19:52:25.460 に答える