4

addFrameScriptについてお聞きしたいです。

addFrameScript(0, frame1);   

このスクリプトはどういう意味ですか? なぜその0ですか?

0を他の数字や単語に置き換えることはできますか?

public function try()
{
    addFrameScript(0, frame1);
    return;

}// end function

誰かが私を理解するのを手伝ってくれるなら?

4

2 に答える 2

6

MovieClipこの文書化されていないメソッドは、インスタンスの再生ヘッドが指定されたフレーム (この場合は最初のフレーム) 0(0 ベースのインデックス)に達したときに関数を呼び出すために使用されます。もちろん、利用可能なフレーム数に制限されています。たとえば、最後のフレームにスクリプトを追加するには、次を使用します。

mc.addFrameScript(mc.totalFrames-1, lastFrameReached);

function lastFrameReached():void {
    trace("stopping the animation");
    mc.stop();
}

Flash オーサリング ツール内のコードを含むフレームと考えてください。

于 2013-01-26T16:36:25.257 に答える
0

フレームは、Flash Player のタイム スライスです。したがって、fps が 12 fps に設定されている場合、そのフレームのスクリプトは 1/12 秒間注目 (実行) されます。

addFrameScriptおそらく開発者による使用を思いとどまらせるために、ほとんど文書化されていません。したがって、基本的には、コードでタイマー クラスを初期化し、タイム スライスを手動で管理します。

フレームは、フレーム スクリプトと呼ばれる実行可能ファイルのコレクションを使用して、ゼロ インデックスの配列として再び表されます。したがって、フレームスクリプトを自分で追加すると、IDE のフレームの as3 パネルに配置した場合にフレーム クラスのコンストラクターが (内部的に) 実行することを単純に実行できます。

要するに、frameScripts が内部配列になる可能性がある場所addFrameScript(0, frame1);と並行して何かです。frameScripts[0] = frame1;

于 2013-01-26T18:40:09.400 に答える