2

私はこの質問を間違っており、間違って検索している可能性があります。最初のフレームに 3 つのフレーム、2 つのボタンがあるシンプルなフラッシュ プレゼンテーションを構築しようとしています。1 はフレーム 2 に移動し、2 番目はフレーム 3 に移動します。タイム ラインでコーディングする方法を知っており、クラス ファイル (.as ファイル) で 1 つのボタンを動作させることができます。クラス ファイルで 2 つのボタンを動作させることができません。コードはできるだけシンプルにしたい。これが私が持っているものです。

パッケージ {

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

public class Buttontest extends MovieClip
{


    public function Buttontest()
    {
        init();
    }
    private function init():void
    {
        ball.addEventListener(MouseEvent.CLICK, handleButtonClicks);
        //ball2.addEventListener(MouseEvent.CLICK, handleButtonClicks);

    }
    private function handleButtonClicks(event:MouseEvent):void
    {
        gotoAndPlay(2);
        //gotoAndPlay(3);
    }
}

}

4

1 に答える 1

0

簡単なテストを行いました。Flash Pro のステージにインスタンス ボールと呼ばれるシンボルを配置し、ドキュメント クラスに次のコードを記述したところ、動作しました。

package {
    import flash.display.MovieClip;
    import flash.events.Event;
    import flash.events.MouseEvent;

    public class ClickTest extends MovieClip {

        public function ClickTest() {
            this.gotoAndStop(1);
            this.ball1.addEventListener(MouseEvent.CLICK, ball1Callback);
            this.ball2.addEventListener(MouseEvent.CLICK, ball2Callback);
        }
        private function ball1Callback(e:Event):void {
            trace("ball 1 clicked");
            this.gotoAndStop(2);
        }
        private function ball2Callback(e:Event):void {
            trace("ball 2 clicked");
            this.gotoAndStop(3);
        }
    }
}

ステージ上のボタンのインスタンスに名前を付けたことを確認してください。また、 this.goToAndStop() 関数を使用することもできます。そうしないと、ムービーのループが続行されます。

于 2012-11-08T16:26:29.760 に答える