コメントの表示 | RSS フィード

ムービークリップの深度の管理

すべてのムービークリップは、それぞれ固有の z 順序空間を持ち、これによって、親 SWF またはムービークリップ内でオブジェクトがどのように重なり合うかが決まります。ムービークリップには深度が関連付けられています。この深度によって、同じムービークリップタイムラインに配置された他のムービークリップよりも前面にレンダリングされるのか、後ろにレンダリングされるのかが決まります。attachMovie (MovieClip.attachMovie method)duplicateMovieClip (MovieClip.duplicateMovieClip method)createEmptyMovieClip (MovieClip.createEmptyMovieClip method) を使用して実行時にムービークリップを作成する場合、その新しいムービークリップの震度をパラメータとして指定する必要があります。たとえば、次のコードは、container_mc という名前のムービークリップのタイムラインに、新しいムービークリップを深度 10 で割り当てます。

container_mc.attachMovie("symbolID", "clip1_mc", 10);

これにより、container_mc の z 順序空間内に深度 10 のムービークリップが新しく作成されます。

たとえば、次のコードでは、container_mc に新しいムービークリップを 2 つ割り当てます。1 番目の clip1_mc は、2 番目の clip2_mc よりも深度が小さいので、後ろにレンダリングされます。

container_mc.attachMovie("symbolID", "clip1_mc", 10);
container_mc.attachMovie("symbolID", "clip2_mc", 15);

ムービークリップに指定できる深度の範囲は、-16384 から 1048575 までです。ムービークリップを既に持つ深度に新しいムービークリップを作成するか割り当てると、既存のコンテンツが新しいまたは割り当てられたムービークリップによって上書きされます。この問題が発生するのを防ぐには、MovieClip.getNextHighestDepth() メソッドを使用します。ただし、別の深度管理システムが使われているコンポーネントに対してはこのメソッドを使用しないでください。その場合は DepthManager クラス を instances コンポーネントとともに使用してください。

MovieClip クラスには、ムービークリップの深度を管理するためのメソッドがいくつか用意されています。詳細については、『ActionScript 2.0 リファレンスガイド』の「getNextHighestDepth (MovieClip.getNextHighestDepth method)」、「getInstanceAtDepth (MovieClip.getInstanceAtDepth method)」、「getDepth (MovieClip.getDepth method)」、および「swapDepths (MovieClip.swapDepths method)」を参照してください。

ムービークリップの深度の詳細については、次のトピックを参照してください。


Comments


Fumio Nonaka が Nov 12, 2006 の 5:50 PM に追加:
「attachMovie (MovieClip.attachMovie method) や duplicateMovieClip
(MovieClip.duplicateMovieClip method)、createEmptyMovieClip
(MovieClip.createEmptyMovieClip method) を使用して実行時にムービー
クリップを作成する場合、その新しいムービークリップの震度をパラ
メータとして指定する必要があります。」

[誤] 震度
[正] 深度

 

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

現在のページ: http://livedocs.adobe.com/flash/8_jp/main/00001399.html