| パッケージ | flash.display |
| クラス | public class DisplayObjectContainer |
| 継承 | DisplayObjectContainer InteractiveObject DisplayObject EventDispatcher Object |
| サブクラス | Loader, Sprite, Stage |
| 言語バージョン : | ActionScript 3.0 |
| Player のバージョン : | Flash Player 9 |
DisplayObject は抽象基本クラスであるため、DisplayObject を直接呼び出すことはできません。new DisplayObject() を呼び出すと ArgumentError 例外がスローされます。
new DisplayObjectContainer() コンストラクタを呼び出すと、ArgumentError 例外がスローされます。
詳細については、『ActionScript 3.0 のプログラミング』の「表示のプログラミング」の章を参照してください。
関連項目
| プロパティ | 定義元 | ||
|---|---|---|---|
![]() | accessibilityProperties : AccessibilityProperties
この表示オブジェクトの現在のアクセシビリティオプションです。
| DisplayObject | |
![]() | alpha : Number
指定されたオブジェクトのアルファ透明度値を示します。
| DisplayObject | |
![]() | blendMode : String
使用するブレンドモードを指定する BlendMode クラスの値です。
| DisplayObject | |
![]() | cacheAsBitmap : Boolean
true に設定されている場合、表示オブジェクトの内部ビットマップ表現が Flash Player にキャッシュされます。
| DisplayObject | |
![]() | constructor : Object
特定のオブジェクトインスタンスのクラスオブジェクトまたはコンストラクタ関数への参照です。
| Object | |
![]() | contextMenu : ContextMenu
このオブジェクトに関連付けられたコンテキストメニューを指定します。
| InteractiveObject | |
![]() | doubleClickEnabled : Boolean
オブジェクトが doubleClick イベントを受け取るかどうかを指定します。
| InteractiveObject | |
![]() | filters : Array
表示オブジェクトに現在関連付けられている各フィルタオブジェクトが格納されているインデックス付きの配列です。
| DisplayObject | |
![]() | focusRect : Object
このオブジェクトがフォーカス矩形を表示するかどうかを指定します。
| InteractiveObject | |
![]() | height : Number
表示オブジェクトの高さを示します (ピクセル単位)。
| DisplayObject | |
![]() | loaderInfo : LoaderInfo
[read-only]
この表示オブジェクトが属するファイルのロード情報を含む LoaderInfo オブジェクトを返します。
| DisplayObject | |
![]() | mask : DisplayObject
呼び出し元の表示オブジェクトは、指定された mask オブジェクトによってマスクされます。
| DisplayObject | |
| mouseChildren : Boolean
オブジェクトの子に対してマウスが有効かどうかを調べます。
| DisplayObjectContainer | ||
![]() | mouseEnabled : Boolean
このオブジェクトがマウスメッセージを受け取るかどうかを指定します。
| InteractiveObject | |
![]() | mouseX : Number
[read-only]
マウス位置の x 座標を示します (ピクセル単位)。
| DisplayObject | |
![]() | mouseY : Number
[read-only]
マウス位置の y 座標を示します (ピクセル単位)。
| DisplayObject | |
![]() | name : String
DisplayObject のインスタンス名を示します。
| DisplayObject | |
| numChildren : int
[read-only]
このオブジェクトの子の数を返します。
| DisplayObjectContainer | ||
![]() | opaqueBackground : Object
表示オブジェクトが特定の背景色で不透明であるかどうかを指定します。
| DisplayObject | |
![]() | parent : DisplayObjectContainer
[read-only]
この表示オブジェクトを含む DisplayObjectContainer オブジェクトを示します。
| DisplayObject | |
![]() | prototype : Object
[static]
クラスまたは関数オブジェクトのプロトタイプオブジェクトへの参照です。
| Object | |
![]() | root : DisplayObject
[read-only]
ロードされた SWF ファイル内の表示オブジェクトの場合、root プロパティはその SWF ファイルが表す表示リストのツリー構造部分の一番上にある表示オブジェクトとなります。
| DisplayObject | |
![]() | rotation : Number
DisplayObject インスタンスの元の位置からの回転角を度単位で示します。
| DisplayObject | |
![]() | scale9Grid : Rectangle
現在有効な拡大 / 縮小グリッドです。
| DisplayObject | |
![]() | scaleX : Number
基準点から適用されるオブジェクトの水平スケール (percentage) を示します。
| DisplayObject | |
![]() | scaleY : Number
オブジェクトの基準点から適用されるオブジェクトの垂直スケール (percentage) を示します。
| DisplayObject | |
![]() | scrollRect : Rectangle
表示オブジェクトのスクロール矩形の境界です。
| DisplayObject | |
![]() | stage : Stage
[read-only]
表示オブジェクトのステージです。
| DisplayObject | |
| tabChildren : Boolean
オブジェクトの子に対してタブが有効かどうかを調べます。
| DisplayObjectContainer | ||
![]() | tabEnabled : Boolean
このオブジェクトがタブ順序に含まれるかどうかを指定します。
| InteractiveObject | |
![]() | tabIndex : int
SWF ファイル内のオブジェクトのタブ順序を指定します。
| InteractiveObject | |
| textSnapshot : TextSnapshot
[read-only]
この DisplayObjectContainer インスタンスの TextSnapshot オブジェクトを返します。
| DisplayObjectContainer | ||
![]() | transform : Transform
表示オブジェクトのマトリックス、カラー変換、ピクセル境界に関係するプロパティを持つオブジェクトです。
| DisplayObject | |
![]() | visible : Boolean
表示オブジェクトが可視かどうかを示します。
| DisplayObject | |
![]() | width : Number
表示オブジェクトの幅を示します (ピクセル単位)。
| DisplayObject | |
![]() | x : Number
親 DisplayObjectContainer のローカル座標を基準にした DisplayObject インスタンスの x 座標を示します。
| DisplayObject | |
![]() | y : Number
親 DisplayObjectContainer のローカル座標を基準にした DisplayObject インスタンスの y 座標を示します。
| DisplayObject | |
| メソッド | 定義元 | ||
|---|---|---|---|
|
新しい DisplayObjectContainer() コンストラクタを呼び出すと、ArgumentError 例外がスローされます。
| DisplayObjectContainer | ||
|
この DisplayObjectContainer インスタンスに子 DisplayObject インスタンスを追加します。
| DisplayObjectContainer | ||
|
この DisplayObjectContainer インスタンスに子 DisplayObject インスタンスを追加します。
| DisplayObjectContainer | ||
![]() |
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
イベントリスナーオブジェクトを EventDispatcher オブジェクトに登録し、リスナーがイベントの通知を受け取るようにします。
| EventDispatcher | |
|
特定の point ポイントを指定して呼び出した DisplayObjectContainer.getObjectsUnderPoint() メソッドから返されたリストに、セキュリティ上の制約のために省略される表示オブジェクトがあるかどうかを示します。
| DisplayObjectContainer | ||
|
指定された表示オブジェクトが、DisplayObjectContainer インスタンスの子であるか、インスタンス自体であるかを指定します。
| DisplayObjectContainer | ||
![]() |
イベントをイベントフローに送出します。
| EventDispatcher | |
![]() |
targetCoordinateSpace オブジェクトの座標系を基準にして、表示オブジェクトの領域を定義する矩形を返します。
| DisplayObject | |
|
指定のインデックス位置にある子表示オブジェクトインスタンスを返します。
| DisplayObjectContainer | ||
|
指定された名前に一致する子表示オブジェクトを返します。
| DisplayObjectContainer | ||
|
子 DisplayObject インスタンスのインデックス位置を返します。
| DisplayObjectContainer | ||
|
指定されたポイントの下にあり、この DisplayObjectContainer インスタンスの子または孫などであるオブジェクトの配列を返します。
| DisplayObjectContainer | ||
![]() |
シェイプ上の線を除き、targetCoordinateSpace パラメータによって定義された座標系に基づいて、表示オブジェクトの境界を定義する矩形を返します。
| DisplayObject | |
![]() |
point オブジェクトをステージ (グローバル) 座標から表示オブジェクトの (ローカル) 座標に変換します。
| DisplayObject | |
![]() |
EventDispatcher オブジェクトに、特定のイベントタイプに対して登録されたリスナーがあるかどうかを確認します。
| EventDispatcher | |
![]() |
オブジェクトに指定されたプロパティが定義されているかどうかを示します。
| Object | |
![]() |
表示オブジェクトを評価して、obj 表示オブジェクトと重複または交差するかどうかを調べます。
| DisplayObject | |
![]() |
表示オブジェクトを評価して、x および y パラメータで指定されたポイントと重複または交差するかどうかを調べます。
| DisplayObject | |
![]() |
Object クラスのインスタンスが、パラメータとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。
| Object | |
![]() |
point オブジェクトを表示オブジェクトの (ローカル) 座標からステージ (グローバル) 座標に変換します。
| DisplayObject | |
![]() |
指定されたプロパティが存在し列挙できるかどうかを示します。
| Object | |
|
DisplayObjectContainer インスタンスの子リストから指定の child DisplayObject インスタンスを削除します。
| DisplayObjectContainer | ||
|
DisplayObjectContainer の子リストの指定されたインデックス位置から子 DisplayObject を削除します。
| DisplayObjectContainer | ||
![]() |
EventDispatcher オブジェクトからリスナーを削除します。
| EventDispatcher | |
|
表示オブジェクトコンテナの既存の子の位置を変更します。
| DisplayObjectContainer | ||
![]() |
ループ処理に対するダイナミックプロパティの可用性を設定します。
| Object | |
|
指定された 2 つの子オブジェクトの z 順序 (重ね順) を入れ替えます。
| DisplayObjectContainer | ||
|
子リスト内の指定されたインデックス位置に該当する 2 つの子オブジェクトの z 順序 (重ね順) を入れ替えます。
| DisplayObjectContainer | ||
![]() |
指定されたオブジェクトのストリング表現を返します。
| Object | |
![]() |
指定されたオブジェクトのプリミティブな値を返します。
| Object | |
![]() |
指定されたイベントタイプについて、この EventDispatcher オブジェクトまたはその祖先にイベントリスナーが登録されているかどうかを確認します。
| EventDispatcher | |
| mouseChildren | プロパティ |
mouseChildren:Boolean [read-write]
| 言語バージョン : | ActionScript 3.0 |
| Player のバージョン : | Flash Player 9 |
オブジェクトの子に対してマウスが有効かどうかを調べます。オブジェクトが使用可能なマウスの場合、マウスを使用して対話できます。デフォルト値は true です。
このプロパティは、SimpleButton クラスではなく、Sprite クラスのインスタンスを使用してボタンを作成するときに役立ちます。Sprite インスタンスを使用してボタンを作成する場合、他の Sprite インスタンスを追加するために addChild() メソッドを使用してボタンの修飾を選択できます。子として追加する Sprite インスタンスは、親インスタンスをターゲットオブジェクトとすることを想定するときに、マウスイベントのターゲットオブジェクトとなる場合があるため、マウスイベントについて予期しない動作を引き起こす可能性があります。親インスタンスが確実にマウスイベントのターゲットオブジェクトになるようにするには、親インスタンスの mouseChildren プロパティを false に設定します。
このプロパティを設定すると、イベントは送出されなくなります。インタラクティブな機能を作成するには、addEventListener() メソッドを使用する必要があります。
public function get mouseChildren():Boolean
public function set mouseChildren(value:Boolean):void
関連項目
container という名前の Sprite オブジェクト (一種の表示オブジェクトコンテナ) を設定し、mouseChildren プロパティを false に設定するとき、mouseClick イベントのターゲットは、その子オブジェクトのいずれかではなく、container オブジェクトになります。
import flash.display.Sprite;
import flash.events.MouseEvent;
var container:Sprite = new Sprite();
container.name = "container";
addChild(container);
var circle:Sprite = new Sprite();
circle.name = "circle";
circle.graphics.beginFill(0xFFCC00);
circle.graphics.drawCircle(40, 40, 40);
container.addChild(circle);
container.mouseChildren = false;
container.addEventListener(MouseEvent.CLICK, clicked);
function clicked(event:MouseEvent):void {
trace(event.target.name); // container
}
| numChildren | プロパティ |
numChildren:int [read-only]
| 言語バージョン : | ActionScript 3.0 |
| Player のバージョン : | Flash Player 9 |
このオブジェクトの子の数を返します。
public function get numChildren():int
関連項目
container1 および container2 という名前の 2 つの Sprite オブジェクトを設定します。Sprite は表示オブジェクトコンテナの 1 つです。例では、addChild() メソッドを呼び出して、次のような表示階層を設定します。container1 は container2 の子で、他の 2 つの表示オブジェクト circle1 と circle2 は、container1 の子です。trace() メソッドを呼び出すと、各オブジェクトの子の数が表示されます。numChildren のカウントには孫は含められません。import flash.display.Sprite; var container1:Sprite = new Sprite(); var container2:Sprite = new Sprite(); var circle1:Sprite = new Sprite(); circle1.graphics.beginFill(0xFFCC00); circle1.graphics.drawCircle(40, 40, 40); var circle2:Sprite = new Sprite(); circle2.graphics.beginFill(0x00CCFF); circle2.graphics.drawCircle(80, 40, 40); container2.addChild(container1); container1.addChild(circle1); container1.addChild(circle2); trace(container1.numChildren); // 2 trace(container2.numChildren); // 1 trace(circle1.numChildren); // 0 trace(circle2.numChildren); // 0
| tabChildren | プロパティ |
tabChildren:Boolean [read-write]
| 言語バージョン : | ActionScript 3.0 |
| Player のバージョン : | Flash Player 9 |
オブジェクトの子に対してタブが有効かどうかを調べます。オブジェクトの子に対してタブを有効または無効にします。デフォルト値は true です。
public function get tabChildren():Boolean
public function set tabChildren(value:Boolean):void
IllegalOperationError — Stage オブジェクトのこのプロパティを呼び出すと、例外がスローされます。Stage オブジェクトは、このプロパティを実装しません。
|
container1 表示オブジェクトコンテナを作成し、2 つの表示オブジェクト circle1 と circle2 をその子リストに追加します。例では、tabChildren を子の false に設定するため、tabIndex を使用して自身のタブ順を管理できます。import flash.display.Sprite; var container:Sprite = new Sprite(); container.tabChildren = false; var circle1:Sprite = new Sprite(); circle1.graphics.beginFill(0xFFCC00); circle1.graphics.drawCircle(40, 40, 40); circle1.tabIndex = 1; var circle2:Sprite = new Sprite(); circle2.graphics.beginFill(0x00CCFF); circle2.graphics.drawCircle(120, 40, 40); circle2.tabIndex = 0; container.addChild(circle1); container.addChild(circle2);
| textSnapshot | プロパティ |
textSnapshot:TextSnapshot [read-only]
| 言語バージョン : | ActionScript 3.0 |
| Player のバージョン : | Flash Player 9 |
この DisplayObjectContainer インスタンスの TextSnapshot オブジェクトを返します。
public function get textSnapshot():TextSnapshot
関連項目
trace(this.textSnapshot.getText(0, this.textSnapshot.charCount));
| DisplayObjectContainer | () | コンストラクタ |
public function DisplayObjectContainer()
| 言語バージョン : | ActionScript 3.0 |
| Player のバージョン : | Flash Player 9 |
new DisplayObjectContainer() コンストラクタを呼び出すと、ArgumentError 例外がスローされます。ただし、次に示す DisplayObjectContainer のサブクラスについては、コンストラクタを呼び出すことができます。
new Loader()new Sprite()new MovieClip()| addChild | () | メソッド |
public function addChild(child:DisplayObject):DisplayObject
| 言語バージョン : | ActionScript 3.0 |
| Player のバージョン : | Flash Player 9 |
この DisplayObjectContainer インスタンスに子 DisplayObject インスタンスを追加します。子インスタンスは、この DisplayObjectContainer インスタンスにある他のすべての子の前 (上) に追加されます。特定のインデックス位置に子を追加する場合は、addChildAt() メソッドを使用します。
既に異なる表示オブジェクトコンテナを親に持つ子オブジェクトを追加する場合は、もう一方の表示オブジェクトコンテナの子リストからそのオブジェクトが削除されます。
パラメータ
child:DisplayObject — この DisplayObjectContainer インスタンスの子として追加する DisplayObject インスタンスです。
|
DisplayObject — child パラメータで渡す DisplayObject インスタンスです。
|
added: — 表示オブジェクトが表示リストに追加されたときに送出されます。 |
ArgumentError — 子が親と同じ場合にスローされます。呼び出し側が、追加される子の子 (または孫など) の場合も 例外がスローされます。
|
関連項目
container1 および container2 という名前の 2 つの Sprite オブジェクトを設定します。Sprite は表示オブジェクトコンテナの 1 つです。例では、addChild() メソッドを呼び出して、次のような表示階層を設定します。container1 は container2 の子で、他の 2 つの表示オブジェクト circle1 と circle2 は、container1 の子です。trace() メソッドを呼び出すと、各オブジェクトの子の数が表示されます。numChildren のカウントには孫は含められません。import flash.display.Sprite; var container1:Sprite = new Sprite(); var container2:Sprite = new Sprite(); var circle1:Sprite = new Sprite(); circle1.graphics.beginFill(0xFFCC00); circle1.graphics.drawCircle(40, 40, 40); var circle2:Sprite = new Sprite(); circle2.graphics.beginFill(0x00CCFF); circle2.graphics.drawCircle(80, 40, 40); container2.addChild(container1); container1.addChild(circle1); container1.addChild(circle2); trace(container1.numChildren); // 2 trace(container2.numChildren); // 1 trace(circle1.numChildren); // 0 trace(circle2.numChildren); // 0
| addChildAt | () | メソッド |
public function addChildAt(child:DisplayObject, index:int):DisplayObject
| 言語バージョン : | ActionScript 3.0 |
| Player のバージョン : | Flash Player 9 |
この DisplayObjectContainer インスタンスに子 DisplayObject インスタンスを追加します。子インスタンスは、指定されたインデックス位置に追加されます。インデックス 0 は、この DisplayObjectContainer オブジェクトの表示リストの背景または一番下を表します。
たとえば、a、b、c というラベルの 3 個の表示オブジェクトをインデックス位置 0、2、1 にそれぞれ配置すると、以下のようになります。
既に異なる表示オブジェクトコンテナを親に持つ子オブジェクトを追加する場合は、もう一方の表示オブジェクトコンテナの子リストからそのオブジェクトが削除されます。
パラメータ
child:DisplayObject — この DisplayObjectContainer インスタンスの子として追加する DisplayObject インスタンスです。
|
|
index:int — 子を追加するインデックス位置です。既にオブジェクトが置かれているインデックス位置を指定すると、その位置にあるオブジェクトとその上に位置するすべてのオブジェクトが、子リスト内で 1 つ上の位置に移動します。
|
DisplayObject — child パラメータで渡す DisplayObject インスタンスです。
|
added: — 表示オブジェクトが表示リストに追加されたときに送出されます。 |
RangeError — インデックス位置が子リストに存在しない場合にスローされます。
|
|
ArgumentError — 子が親と同じ場合にスローされます。呼び出し側が、追加される子の子 (または孫など) の場合も 例外がスローされます。
|
関連項目
container 表示オブジェクトコンテナを作成し、表示オブジェクト circle1 をその表示リストに追加します。次に container.addChildAt(circle2, 0) を呼び出します。これは、circle2 オブジェクトをインデックス位置ゼロ (黒) に追加し、circle1 オブジェクトをインデックス位置 1 に移動します。import flash.display.Sprite; var container:Sprite = new Sprite(); var circle1:Sprite = new Sprite(); var circle2:Sprite = new Sprite(); container.addChild(circle1); container.addChildAt(circle2, 0); trace(container.getChildAt(0) == circle2); // true trace(container.getChildAt(1) == circle1); // true
| areInaccessibleObjectsUnderPoint | () | メソッド |
public function areInaccessibleObjectsUnderPoint(point:Point):Boolean
| 言語バージョン : | ActionScript 3.0 |
| Player のバージョン : | Flash Player 9 |
特定の point ポイントを指定して呼び出した DisplayObjectContainer.getObjectsUnderPoint() メソッドから返されたリストに、セキュリティ上の制約のために省略される表示オブジェクトがあるかどうかを示します。デフォルトでは、Security.allowDomain() メソッドの呼び出しによって許可されていない限り、あるドメインのコンテンツから別のドメインのオブジェクトにアクセスすることはできません。
詳細については、以下を参照してください。
point パラメータは、ステージの座標空間内にあり、表示オブジェクトコンテナの座標空間とは異なる場合があります。ただし、表示オブジェクトがステージである場合、座標空間は同じです。globalToLocal() メソッドおよび localToGlobal() メソッドを使用すると、これらの座標空間の間でポイントを変換できます。
パラメータ
point:Point — 注目するポイントです。
|
Boolean — true は、そのポイントがセキュリティ上の制限のある子表示オブジェクトを含んでいることを示します。
|
関連項目
container という名前の表示オブジェクトコンテナを作成します。次のコードブロックでは、Loader オブジェクトを使用してリモートファイルサーバーから "test.jpg" という名前の JPEG ファイルをロードします。LoaderContext オブジェクトの checkPolicyFile プロパティ (load() メソッドでパラメータとして使用) が、false に設定されます。ファイルがロードされると、コードは loaded() メソッドを呼び出します。このメソッドは、container.areInaccessibleObjectsUnderPoint() を呼び出しますが、ロードされたコンテンツがアクセスできないドメインからのものであることを前提としているため、true の値が返されます。
import flash.display.Sprite;
import flash.display.Loader;
import flash.system.LoaderContext;
import flash.net.URLRequest;
import flash.events.Event;
import flash.geom.Point;
var container:Sprite = new Sprite();
var urlReq:URLRequest = new URLRequest("http://localhost/RemoteFile.swf");
var ldr:Loader = new Loader();
var context:LoaderContext = new LoaderContext();
context.checkPolicyFile = false;
ldr.load(urlReq, context);
ldr.contentLoaderInfo.addEventListener(Event.COMPLETE, loaded);
ldr.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, urlNotFound);
function loaded(event:Event):void {
var pt:Point = new Point(1, 1);
trace(container.areInaccessibleObjectsUnderPoint(pt)); // true
}
function urlNotFound(event:Event):void {
trace("The URL was not found.");
}| contains | () | メソッド |
public function contains(child:DisplayObject):Boolean
| 言語バージョン : | ActionScript 3.0 |
| Player のバージョン : | Flash Player 9 |
指定された表示オブジェクトが、DisplayObjectContainer インスタンスの子であるか、インスタンス自体であるかを指定します。検索には、この DisplayObjectContainer インスタンスの入った表示リスト全体が含まれます。孫、ひ孫などがそれぞれ true を返します。
パラメータ
child:DisplayObject — テストする子オブジェクトです。
|
Boolean — true となります (child オブジェクトが DisplayObjectContainer の子であるか、コンテナ自体である場合)。そうでない場合は、false となります。
|
contains() メソッドを呼び出すと表示されます。import flash.display.Sprite; var sprite1:Sprite = new Sprite(); var sprite2:Sprite = new Sprite(); var sprite3:Sprite = new Sprite(); var sprite4:Sprite = new Sprite(); sprite1.addChild(sprite2); sprite2.addChild(sprite3); trace(sprite1.contains(sprite1)); // true trace(sprite1.contains(sprite2)); // true trace(sprite1.contains(sprite3)); // true trace(sprite1.contains(sprite4)); // false
| getChildAt | () | メソッド |
public function getChildAt(index:int):DisplayObject
| 言語バージョン : | ActionScript 3.0 |
| Player のバージョン : | Flash Player 9 |
指定のインデックス位置にある子表示オブジェクトインスタンスを返します。
パラメータ
index:int — 子オブジェクトのインデックス位置です。
|
DisplayObject — 指定されたインデックス位置にある子表示オブジェクトです。
|
RangeError — インデックスが子リストに存在しない場合にスローされます。
|
|
SecurityError — この子表示オブジェクトは、アクセス権が与えられていない Sandbox に属しています。子ムービーで Security.allowDomain() を呼び出すことにより、この状況を回避できます。
|
関連項目
container という名前の表示オブジェクトコンテナを作成し、次に 3 つの表示オブジェクトを container オブジェクトの子リストに追加します。getChildAt() メソッドを呼び出すと、子オブジェクトの位置が表示されます。import flash.display.Sprite; var container:Sprite = new Sprite(); var sprite1:Sprite = new Sprite(); var sprite2:Sprite = new Sprite(); var sprite3:Sprite = new Sprite(); container.addChild(sprite1); container.addChild(sprite2); container.addChildAt(sprite3, 0); trace(container.getChildAt(0) == sprite3); // true trace(container.getChildAt(1) == sprite1); // true trace(container.getChildAt(2) == sprite2); // true
| getChildByName | () | メソッド |
public function getChildByName(name:String):DisplayObject
| 言語バージョン : | ActionScript 3.0 |
| Player のバージョン : | Flash Player 9 |
指定された名前に一致する子表示オブジェクトを返します。指定された名前を持つ子表示オブジェクトが複数存在する場合、メソッドは子リストの最初のオブジェクトを返します。
getChildAt() メソッドは、getChildByName() メソッドよりも処理が高速です。getChildAt() メソッドはキャッシュ配列の子にアクセスしますが、getChildByName() メソッドでは子にアクセスするためにリンクされたリストを移動する必要があります。
パラメータ
name:String — 返される子の名前です。
|
DisplayObject — 指定された名前を持つ子表示オブジェクトです。
|
SecurityError — この子表示オブジェクトは、アクセス権が与えられていない Sandbox に属しています。子ムービーで Security.allowDomain() メソッドを呼び出すことにより、この状況を回避できます。
|
関連項目
container という名前の表示オブジェクトコンテナを作成し、次に 2 つの子表示オブジェクトをコンテナに追加します。次にコードは getChildByName() メソッドおよび getChildIndex() メソッドを呼び出し、container オブジェクトの子のインデックス位置を返します。このオブジェクトは、name "sprite1" を持ちます。
import flash.display.Sprite;
import flash.display.DisplayObject;
var container:Sprite = new Sprite();
var sprite1:Sprite = new Sprite();
sprite1.name = "sprite1";
var sprite2:Sprite = new Sprite();
sprite2.name = "sprite2";
container.addChild(sprite1);
container.addChild(sprite2);
var target:DisplayObject = container.getChildByName("sprite1");
trace(container.getChildIndex(target)); // 0| getChildIndex | () | メソッド |
public function getChildIndex(child:DisplayObject):int
| 言語バージョン : | ActionScript 3.0 |
| Player のバージョン : | Flash Player 9 |
child DisplayObject インスタンスのインデックス位置を返します。
パラメータ
child:DisplayObject — 特定する DisplayObject インスタンスです。
|
int — 特定する子表示オブジェクトのインデックス位置です。
|
ArgumentError — 子パラメータがこのオブジェクトの子でない場合にスローされます。
|
container という名前の表示オブジェクトコンテナを作成し、次に 2 つの子表示オブジェクトをコンテナに追加します。次にコードは getChildByName() メソッドおよび getChildIndex() メソッドを呼び出し、container オブジェクトの子のインデックス位置を返します。このオブジェクトは、name "sprite1" を持ちます。
import flash.display.Sprite;
import flash.display.DisplayObject;
var container:Sprite = new Sprite();
var sprite1:Sprite = new Sprite();
sprite1.name = "sprite1";
var sprite2:Sprite = new Sprite();
sprite2.name = "sprite2";
container.addChild(sprite1);
container.addChild(sprite2);
var target:DisplayObject = container.getChildByName("sprite1");
trace(container.getChildIndex(target)); // 0| getObjectsUnderPoint | () | メソッド |
public function getObjectsUnderPoint(point:Point):Array
| 言語バージョン : | ActionScript 3.0 |
| Player のバージョン : | Flash Player 9 |
指定されたポイントの下にあり、この DisplayObjectContainer インスタンスの子または孫などであるオブジェクトの配列を返します。セキュリティ上の理由でアクセスできない子オブジェクトは返される配列から除かれます。このようなセキュリティ上の制限が、返される配列に与えている影響について判別するには、areInaccessibleObjectsUnderPoint() メソッドを呼び出します。
point パラメータは、ステージの座標空間内にあり、表示オブジェクトコンテナの座標空間とは異なる場合があります。ただし、表示オブジェクトがステージである場合、座標空間は同じです。globalToLocal() メソッドおよび localToGlobal() メソッドを使用すると、これらの座標空間の間でポイントを変換できます。
パラメータ
point:Point — 注目するポイントです。
|
Array — 指定されたポイントの下にあり、この DisplayObjectContainer インスタンスの子または孫などであるオブジェクトの配列です。
|
関連項目
container という名前の表示オブジェクトコンテナを作成し、次に重なり合う 2 つの子表示オブジェクトをコンテナに追加します。さらにコードは getObjectsUnderPoint() を 2 回 (最初は 1 つのオブジェクトのみに接するポイントを使用して、次にオブジェクトが重なり合うポイントを使用して) 呼び出し、返された Array の length で、コンテナの各ポイントにあるオブジェクト数を示します。
import flash.display.Sprite; import flash.geom.Point; var container:Sprite = new Sprite(); var square1:Sprite = new Sprite(); square1.graphics.beginFill(0xFFCC00); square1.graphics.drawRect(0, 0, 40, 40); var square2:Sprite = new Sprite(); square2.graphics.beginFill(0x00CCFF); square2.graphics.drawRect(20, 0, 30, 40); container.addChild(square1); container.addChild(square2); var pt:Point = new Point(10, 20); var objects:Array = container.getObjectsUnderPoint(pt); trace(objects.length); // 1 pt = new Point(35, 20); objects = container.getObjectsUnderPoint(pt); trace(objects.length); // 2
| removeChild | () | メソッド |
public function removeChild(child:DisplayObject):DisplayObject
| 言語バージョン : | ActionScript 3.0 |
| Player のバージョン : | Flash Player 9 |
DisplayObjectContainer インスタンスの子リストから指定の child DisplayObject インスタンスを削除します。削除された子の parent プロパティは null に設定されます。その子に対する参照が存在しない場合、そのオブジェクトはガベージコレクションによって収集されます。DisplayObjectContainer の子より上位にある表示オブジェクトのインデックス位置は 1 つ下がります。
ガベージコレクターとは、Flash Player が未使用のメモリスペースを再割り当てする処理のことです。変数またはオブジェクトがアクティブに参照されなくなり、任意の場所に保存されていない場合、ガベージコレクターによってメモリ内が探索され、それらに対する参照が存在しなければメモリスペースを占有している変数またはオブジェクトが一掃されます。
パラメータ
child:DisplayObject — 削除する DisplayObject インスタンスです。
|
DisplayObject — child パラメータで渡す DisplayObject インスタンスです。
|
ArgumentError — 子パラメータがこのオブジェクトの子でない場合にスローされます。
|
container という名前の表示オブジェクトコンテナを作成し、次に 2 つの子表示オブジェクトをコンテナに追加します。イベントリスナーが container オブジェクトに追加されます。これは、ユーザーがコンテナの子オブジェクトをクリックし