| 包 | 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
指示指定对象的 Alpha 透明度值。
| 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
指示从注册点开始应用的对象的水平缩放比例(百分比)。
| DisplayObject | |
![]() | scaleY : Number
指示从对象注册点开始应用的对象的垂直缩放比例(百分比)。
| DisplayObject | |
![]() | scrollRect : Rectangle
显示对象的滚动矩形范围。
| DisplayObject | |
![]() | stage : Stage
[read-only]
显示对象的舞台。
| DisplayObject | |
| tabChildren : Boolean
确定对象的子项是否支持 Tab 键。
| DisplayObjectContainer | ||
![]() | tabEnabled : Boolean
指定此对象是否遵循 Tab 键顺序。
| InteractiveObject | |
![]() | tabIndex : int
指定 SWF 文件中的对象按 Tab 键顺序排列。
| InteractiveObject | |
| textSnapshot : TextSnapshot
[read-only]
返回此 DisplayObjectContainer 实例的 TextSnapshot 对象。
| DisplayObjectContainer | ||
![]() | transform : Transform
一个对象,具有与显示对象的矩阵、颜色转换和像素范围有关的属性。
| DisplayObject | |
![]() | visible : Boolean
显示对象是否可见。
| DisplayObject | |
![]() | width : Number
指示显示对象的宽度,以像素为单位。
| DisplayObject | |
![]() | x : Number
指示 DisplayObject 实例相对于父级 DisplayObjectContainer 本地坐标的 x 坐标。
| DisplayObject | |
![]() | y : Number
指示 DisplayObject 实例相对于父级 DisplayObjectContainer 本地坐标的 y 坐标。
| DisplayObject | |
| 方法 | 定义方 | ||
|---|---|---|---|
|
调用新的 DisplayObjectContainer() 构造函数会引发 ArgumentError 异常。
| DisplayObjectContainer | ||
|
将一个 DisplayObject 子实例添加到该 DisplayObjectContainer 实例中。
| DisplayObjectContainer | ||
|
将一个 DisplayObject 子实例添加到该 DisplayObjectContainer 实例中。
| 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 的 child 实例的索引位置。
| 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 的子列表中指定的 index 位置删除子 DisplayObject。
| DisplayObjectContainer | ||
![]() |
从 EventDispatcher 对象中删除侦听器。
| EventDispatcher | |
|
更改现有子项在显示对象容器中的位置。
| DisplayObjectContainer | ||
![]() |
设置循环操作动态属性的可用性。
| Object | |
|
交换两个指定子对象的 Z 轴顺序(从前到后顺序)。
| DisplayObjectContainer | ||
|
在子级列表中两个指定的索引位置,交换子对象的 Z 轴顺序(前后顺序)。
| DisplayObjectContainer | ||
![]() |
返回指定对象的字符串表示形式。
| Object | |
![]() |
返回指定对象的原始值。
| Object | |
![]() |
检查是否用此 EventDispatcher 对象或其任何始祖为指定事件类型注册了事件侦听器。
| EventDispatcher | |
| mouseChildren | 属性 |
mouseChildren:Boolean [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9 |
确定对象的子项是否支持鼠标。 如果对象支持鼠标,则用户可以使用鼠标与其交互。 默认值为 true。
当您使用 Sprite 类的实例(而不是使用 SimpleButton 类)来创建按钮时,此属性很有用。 当您使用 Sprite 实例来创建按钮时,您可以选择使用 addChild() 方法添加其它 Sprite 实例来修饰按钮。 此过程可能导致鼠标事件出现意外行为,因为当您期望父实例成为鼠标事件的目标对象时,作为子项添加的 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 的 Sprite 对象。 Sprite 是一种显示对象容器。 该示例调用 addChild() 方法以设置显示层次结构:container1 是 container2 的子项,其它两个显示对象 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 |
确定对象的子项是否支持 Tab 键。 为对象的子项启用或禁用 Tab 切换。 默认值为 true。
public function get tabChildren():Boolean
public function set tabChildren(value:Boolean):void
IllegalOperationError — 调用 Stage 对象的此属性会引发异常。 Stage 对象未实现此属性。
|
container1 显示对象容器,并将两个显示对象 circle1 和 circle2 添加到其子级列表。 该示例将子项的 tabChildren 设置为 false,以便它可以使用 tabIndex 管理自己的 Tab 键顺序: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 |
将一个 DisplayObject 子实例添加到该 DisplayObjectContainer 实例中。 子项将被添加到该 DisplayObjectContainer 实例中其它所有子项的前(上)面。 (要将某子项添加到特定索引位置,请使用 addChildAt() 方法。)
如果添加一个已将其它显示对象容器作为父项的子对象,则会从其它显示对象容器的子列表中删除该对象。
参数
child:DisplayObject — 要作为该 DisplayObjectContainer 实例的子项添加的 DisplayObject 实例。
|
DisplayObject — 在 child 参数中传递的 DisplayObject 实例。
|
added: — 将显示对象添加到显示列表中时调度。 |
ArgumentError — 在子项与父项相同时引发。 此外,当调用方是要添加的子项的子项(即孙项等) 时也会引发。
|
另请参见
container1 和 container2 的 Sprite 对象。 Sprite 是一种显示对象容器。 该示例调用 addChild() 方法以设置显示层次结构:container1 是 container2 的子项,其它两个显示对象 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 |
将一个 DisplayObject 子实例添加到该 DisplayObjectContainer 实例中。 该子项将被添加到指定的索引位置。 索引为 0 表示该 DisplayObjectContainer 对象的显示列表的后(底)部。
例如,下例在索引位置 0、2、1 处分别显示 a、b、c 三个显示对象:
如果添加一个已将其它显示对象容器作为父项的子对象,则会从其它显示对象容器的子列表中删除该对象。
参数
child:DisplayObject — 要作为该 DisplayObjectContainer 实例的子项添加的 DisplayObject 实例。
|
|
index:int — 添加该子项的索引位置。 如果指定当前占用的索引位置,则该位置以 |