flash しかも as2 メモ書き

メモ書きです。

onEnterFrame (MovieClip.onEnterFrame ハンドラ)

onEnterFrame = function() {}

SWF ファイルのフレームレートで繰り返し呼び出されます。
onEnterFrame

イベントハンドラに割り当てる関数は、影響を受けるフレームに追加されている他のすべての ActionScript コードの前に処理されます。

このイベントハンドラが呼び出されたときに実行される関数を定義する必要があります。関数はタイムラインに定義できます。また、MovieClip クラスを拡張するクラスファイル内、またはライブラリ内のシンボルにリンクされるクラスファイル内に定義できます。

利用状況

Flash Lite 2.0

次の例では、

onEnterFrameイベントハンドラの関数を定義します。この関数は、[出力] パネルに

trace()アクションを送ります。

my_mc.onEnterFrame = function () { 
    trace ("onEnterFrame called"); 
}

解りやすくまとめた記事を見つけたので、以下引用させて頂きました。

onEnterFrameというのはthis.onEnterFrameということですので、上書きされないようにするにはムービークリップごとにonEnterFrameを定義します。つまり

mc_A.onEnterFrame = function () { mc_A._x += 1; }
mc_B.onEnterFrame = function () { mc_B._y += 5; }
と書けばいいようです。

ちなみに、onEnterFrameをあえて無効にする場合には

delete my_mc.onEnterFrame;
と書きます。

引用もとhttp://d.hatena.ne.jp/toubak/20081229/1230561601

関連記事