Flash Lite 2.x および 3.0 ヘルプ

removeMovieClip (MovieClip.removeMovieClip メソッド)

public removeMovieClip() : Void

duplicateMovieClip()MovieClip.duplicateMovieClip()MovieClip.createEmptyMovieClip()、または MovieClip.attachMovie() で作成したムービークリップインスタンスを削除します。

このメソッドは、負の深度値に割り当てられているムービークリップを削除しません。オーサリングツールで作成したムービークリップには、デフォルトで負の深度値が割り当てられます。負の深度値に割り当てられているムービークリップを削除するには、最初に MovieClip.swapDepths() を使用して、ムービークリップを正の深度値に移動します。

メモ : V2 のコンポーネントを使用している場合、DepthManager クラスではなく MovieClip.getNextHighestDepth() を使用して深度値を割り当てると、removeMovieClip() はエラー通知なしで失敗します。何らかの V2 コンポーネントを使用している場合、DepthManager クラスでは、カーソルとツールヒントに対して使用可能な最高 (1048575) および最低 (-16383) の深度を自動的に予約します。その後 getNextHighestDepth() を呼び出すと、有効範囲外にある 1048576 が返されます。removeMovieClip() メソッドは、有効範囲外にある深度値を見つけると、エラー通知なしで失敗します。getNextHighestDepth() をバージョン 2 のコンポーネントと併用する必要がある場合、有効な深度値を割り当てるには swapDepths() を、ムービークリップのコンテンツを削除するには MovieClip.unloadMovie() を使用できます。代わりに、DepthManager クラスを使用して、有効範囲内の深度値を割り当てることができます。

サブクラスを作成することにより、MovieClip クラスのメソッドおよびイベントハンドラを拡張できます。

次の例では、ボタンをクリックするたびに、ムービークリップインスタンスをステージのランダムな位置に割り当てます。ムービークリップインスタンスをクリックすると、そのインスタンスが SWF ファイルから削除されます。

function randRange(min:Number, max:Number):Number {
    var randNum:Number = Math.round(Math.random()*(max-min))+min;
    return randNum;
}
var bugNum:Number = 0;
addBug_btn.onRelease = addBug;
function addBug() {
    var thisBug:MovieClip = this._parent.attachMovie("bug_id", "bug"+bugNum+"_mc", bugNum, 
{_x:randRange(50, 500), _y:randRange(50, 350)});
    thisBug.onRelease = function() {
    this.removeMovieClip();
    };
    bugNum++;
}

関連項目

duplicateMovieClip 関数, createEmptyMovieClip (MovieClip.createEmptyMovieClip メソッド), duplicateMovieClip (MovieClip.duplicateMovieClip メソッド), attachMovie (MovieClip.attachMovie メソッド), swapDepths (MovieClip.swapDepths メソッド)

 

このページに新しいコメントが追加された場合に、電子メールでの通知を希望する。 | コメントレポート