mx.core
接口public interface IContainer extends IUIComponent , IFlexDisplayObject , IBitmapDrawable , IEventDispatcher
实现器 Container

IContainer 是一个接口,指示组件扩展或模拟 mx.core.Container

另请参见

mx.core.Container


公共属性
 属性定义方
 InheritedaccessibilityProperties : AccessibilityProperties
此显示对象的当前辅助功能选项。
IFlexDisplayObject
 Inheritedalpha : Number
指示指定对象的 Alpha 透明度值。
IFlexDisplayObject
 InheritedbaselinePosition : Number
[只读 (read-only)] 组件第一行文本的基线的 y 坐标。
IUIComponent
 InheritedblendMode : String
BlendMode 类中的一个值,用于指定要使用的混合模式。
IFlexDisplayObject
  buttonMode : Boolean
指定此 sprite 的按钮模式。
IContainer
 InheritedcacheAsBitmap : Boolean
如果设置为 true,则 Flash Player 或 Adobe AIR 将缓存显示对象的内部位图表示形式。
IFlexDisplayObject
  creatingContentPane : Boolean
容器使用内部内容窗格控制滚动。
IContainer
  defaultButton : IFlexDisplayObject
指定为容器的默认按钮的 Button 控件。
IContainer
 Inheriteddocument : Object
对与此组件关联的文档对象的引用。
IUIComponent
  doubleClickEnabled : Boolean
指定此对象是否接收 doubleClick 事件。
IContainer
  dropTarget : DisplayObject
[只读 (read-only)] 指定拖动 sprite 时经过的显示对象,或放置 sprite 的显示对象。
IContainer
 Inheritedenabled : Boolean
组件是否可以接受用户交互。
IUIComponent
 InheritedexplicitHeight : Number
在组件坐标中显式指定的组件高度(以像素为单位)。
IUIComponent
 InheritedexplicitMaxHeight : Number
[只读 (read-only)] 在组件坐标中指定组件最大高度的数字(以像素为单位)。
IUIComponent
 InheritedexplicitMaxWidth : Number
[只读 (read-only)] 在组件坐标中指定组件最大宽度的数字(以像素为单位)。
IUIComponent
 InheritedexplicitMinHeight : Number
[只读 (read-only)] 在组件坐标中指定组件最小高度的数字(以像素为单位)。
IUIComponent
 InheritedexplicitMinWidth : Number
[只读 (read-only)] 在组件坐标中指定组件最小宽度的数字(以像素为单位)。
IUIComponent
 InheritedexplicitWidth : Number
在组件坐标中显式指定的组件宽度(以像素为单位)。
IUIComponent
 Inheritedfilters : Array
包含当前与显示对象关联的每个滤镜对象的索引数组。
IFlexDisplayObject
  focusManager : IFocusManager
[只读 (read-only)] 获取控制此组件及其同级组件的焦点的 FocusManager。
IContainer
 InheritedfocusPane : Sprite
在组件中共享并用作绘图焦点叠加层的单个 Sprite 对象。
IUIComponent
  focusRect : Object
指定此对象是否显示焦点矩形。
IContainer
  graphics : Graphics
[只读 (read-only)] 指定属于此 sprite 的 Graphics 对象,在此 sprite 中可执行矢量绘画命令。
IContainer
 Inheritedheight : Number
指示显示对象的高度,以像素为单位。
IFlexDisplayObject
  hitArea : Sprite
指定一个 sprite 用作另一个 sprite 的点击区域。
IContainer
  horizontalScrollPosition : Number
水平滚动条的当前位置。
IContainer
 InheritedincludeInLayout : Boolean
指定此组件是否包含在父容器的布局中。
IUIComponent
 InheritedisPopUp : Boolean
PopUpManager 将其设置为 true 以指示已弹出该组件。
IUIComponent
 InheritedloaderInfo : LoaderInfo
[只读 (read-only)] 返回一个 LoaderInfo 对象,其中包含加载此显示对象所属的文件的相关信息。
IFlexDisplayObject
 Inheritedmask : DisplayObject
调用显示对象被指定的 mask 对象遮罩。
IFlexDisplayObject
 InheritedmaxHeight : Number
[只读 (read-only)] 在组件坐标中指定组件最大高度的数字(以像素为单位)。
IUIComponent
 InheritedmaxWidth : Number
[只读 (read-only)] 在组件坐标中指定组件最大宽度的数字(以像素为单位)。
IUIComponent
 InheritedmeasuredHeight : Number
[只读 (read-only)] 此对象的测量高度。
IFlexDisplayObject
 InheritedmeasuredMinHeight : Number
组件的默认最小高度(以像素为单位)。
IUIComponent
 InheritedmeasuredMinWidth : Number
组件的默认最小宽度(以像素为单位)。
IUIComponent
 InheritedmeasuredWidth : Number
[只读 (read-only)] 此对象的测量宽度。
IFlexDisplayObject
 InheritedminHeight : Number
[只读 (read-only)] 在组件坐标中指定组件最小高度的数字(以像素为单位)。
IUIComponent
 InheritedminWidth : Number
[只读 (read-only)] 在组件坐标中指定组件最小宽度的数字(以像素为单位)。
IUIComponent
  mouseChildren : Boolean
确定对象的子项是否支持鼠标。
IContainer
  mouseEnabled : Boolean
指定此对象是否接收鼠标消息。
IContainer
 InheritedmouseX : Number
[只读 (read-only)] 指示鼠标位置的 x 坐标,以像素为单位。
IFlexDisplayObject
 InheritedmouseY : Number
[只读 (read-only)] 指示鼠标位置的 y 坐标,以像素为单位。
IFlexDisplayObject
 Inheritedname : String
指示 DisplayObject 的实例名称。
IFlexDisplayObject
  numChildren : int
[只读 (read-only)] 返回此对象的子项数目。
IContainer
 InheritedopaqueBackground : Object
指定显示对象是否由于具有某种背景颜色而不透明。
IFlexDisplayObject
 Inheritedowner : DisplayObjectContainer
通常为此组件的父容器。
IUIComponent
 Inheritedparent : DisplayObjectContainer
[只读 (read-only)] 指示包含此显示对象的 DisplayObjectContainer 对象。
IFlexDisplayObject
 InheritedpercentHeight : Number
以组件父项大小百分比的方式指定组件高度的数字。
IUIComponent
 InheritedpercentWidth : Number
以组件父项大小百分比形式指定其宽度的数字。
IUIComponent
 Inheritedroot : DisplayObject
[只读 (read-only)] 此处介绍的几种方法通常只位于 IDisplayObject 中,但为了具有向后兼容性,在 IFlexDisplayObject 中还必须直接包含它们,因此这些方法存在于此独立的包含文件中。
IFlexDisplayObject
 Inheritedrotation : Number
指示 DisplayObject 实例距其原始方向的旋转程度,以度为单位。
IFlexDisplayObject
 Inheritedscale9Grid : Rectangle
当前有效的缩放网格。
IFlexDisplayObject
 InheritedscaleX : Number
指示从注册点开始应用的对象的水平缩放比例(百分比)。
IFlexDisplayObject
 InheritedscaleY : Number
指示从对象注册点开始应用的对象的垂直缩放比例(百分比)。
IFlexDisplayObject
 InheritedscrollRect : Rectangle
显示对象的滚动矩形范围。
IFlexDisplayObject
  soundTransform : SoundTransform
控制此 sprite 中的声音。
IContainer
 Inheritedstage : Stage
[只读 (read-only)] 显示对象的舞台。
IFlexDisplayObject
 InheritedsystemManager : ISystemManager
对此组件的 SystemManager 对象的引用。
IUIComponent
  tabChildren : Boolean
确定对象的子项是否支持 Tab 键。
IContainer
  tabEnabled : Boolean
此处的方法通常只位于 IInteractiveObject 中,但为了保持向后兼容,它们的始祖方法必须直接包含在 IFlexDisplayObject 中,因此这些方法还必须位于单独的包含文件中,以便在 ITextField 中使用
IContainer
  tabIndex : int
指定 SWF 文件中的对象按 Tab 键顺序排列。
IContainer
  textSnapshot : TextSnapshot
[只读 (read-only)] 返回此 DisplayObjectContainer 实例的 TextSnapshot 对象。
IContainer
 Inheritedtransform : Transform
一个对象,具有与显示对象的矩阵、颜色转换和像素范围有关的属性。
IFlexDisplayObject
 InheritedtweeningProperties : Array
由 EffectManager 使用。
IUIComponent
  useHandCursor : Boolean
布尔值,指示当鼠标滑过其 buttonMode 属性设置为 true 的 sprite 时是否显示手指形(手形光标)。
IContainer
  verticalScrollPosition : Number
垂直滚动条的当前位置。
IContainer
  viewMetrics : EdgeMetrics
[只读 (read-only)] 返回具有 left、top、right 和 bottom 四个属性的对象。
IContainer
 Inheritedvisible : Boolean
显示对象是否可见。
IFlexDisplayObject
 Inheritedwidth : Number
指示显示对象的宽度,以像素为单位。
IFlexDisplayObject
 Inheritedx : Number
指示 DisplayObject 实例相对于父级 DisplayObjectContainer 本地坐标的 x 坐标。
IFlexDisplayObject
 Inheritedy : Number
指示 DisplayObject 实例相对于父级 DisplayObjectContainer 本地坐标的 y 坐标。
IFlexDisplayObject
公共方法
 方法定义方
  
将一个 DisplayObject 子实例添加到该 DisplayObjectContainer 实例中。
IContainer
  
将一个 DisplayObject 子实例添加到该 DisplayObjectContainer 实例中。
IContainer
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。
IEventDispatcher
  
指示安全限制是否会导致出现以下情况:在列表中忽略了使用指定 point 点调用 DisplayObjectContainer.getObjectsUnderPoint() 方法时返回的所有显示对象。
IContainer
  
确定指定显示对象是 DisplayObjectContainer 实例的子项还是该实例本身。
IContainer
 Inherited
将事件调度到事件流中。
IEventDispatcher
 Inherited
getBounds(targetCoordinateSpace:DisplayObject):Rectangle
返回一个矩形,该矩形定义相对于 targetCoordinateSpace 对象坐标系的显示对象区域。
IFlexDisplayObject
  
返回位于指定索引处的子显示对象实例。
IContainer
  
返回具有指定名称的子显示对象。
IContainer
  
返回 DisplayObject 的 child 实例的索引位置。
IContainer
 Inherited
确定是使用显式高度还是测量高度的一种简便方法
IUIComponent
 Inherited
确定是使用显式宽度还是测量宽度的一种简便方法
IUIComponent
  
返回对象的数组,这些对象位于指定点下,并且是该 DisplayObjectContainer 实例的子项(或孙子项,依此类推)。
IContainer
 Inherited
getRect(targetCoordinateSpace:DisplayObject):Rectangle
返回一个矩形,该矩形根据 targetCoordinateSpace 参数定义的坐标系定义显示对象的边界,但不包括形状上的任何笔触。
IFlexDisplayObject
 Inherited
将 point 对象从舞台(全局)坐标转换为显示对象的(本地)坐标。
IFlexDisplayObject
 Inherited
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。
IEventDispatcher
 Inherited
计算显示对象,以确定它是否与 obj 显示对象重叠或相交。
IFlexDisplayObject
 Inherited
hitTestPoint(x:Number, y:Number, shapeFlag:Boolean = false):Boolean
计算显示对象,以确定它是否与 x 和 y 参数指定的点重叠或相交。
IFlexDisplayObject
 Inherited
初始化对象。
IUIComponent
 Inherited
将 point 对象从显示对象的(本地)坐标转换为舞台(全局)坐标。
IFlexDisplayObject
 Inherited
将此对象移动到指定的 x 和 y 坐标。
IFlexDisplayObject
 Inherited
如果 owner 属性链从 child 指向此 UIComponent,则返回 true。
IUIComponent
 Inherited
当在父项中添加或删除 UIComponent 对象时由 Flex 调用。
IUIComponent
  
从 DisplayObjectContainer 实例的子列表中删除指定的 child DisplayObject 实例。
IContainer
  
从 DisplayObjectContainer 的子列表中指定的 index 位置删除子 DisplayObject。
IContainer
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
从 EventDispatcher 对象中删除侦听器。
IEventDispatcher
 Inherited
setActualSize(newWidth:Number, newHeight:Number):void
设置此对象的实际大小。
IFlexDisplayObject
  
更改现有子项在显示对象容器中的位置。
IContainer
 Inherited
setVisible(value:Boolean, noEvent:Boolean = false):void
当 visible 属性发生更改时调用。
IUIComponent
  
startDrag(lockCenter:Boolean = false, bounds:Rectangle = null):void
允许用户拖动指定的 Sprite。
IContainer
  
结束 startDrag() 方法。
IContainer
  
交换两个指定子对象的 Z 轴顺序(从前到后顺序)。
IContainer
  
swapChildrenAt(index1:int, index2:int):void
在子级列表中两个指定的索引位置,交换子对象的 Z 轴顺序(前后顺序)。
IContainer
 Inherited
检查是否用此 EventDispatcher 对象或其任何始祖为指定事件类型注册了事件侦听器。
IEventDispatcher
属性详细信息
buttonMode属性
buttonMode:Boolean  [读写]

指定此 sprite 的按钮模式。如果为 true,则此 Sprite 的行为方式就像按钮,也就是说当鼠标指针经过 Sprite 上方时它会触发手形光标的显示,并在 Sprite 具有焦点的情况下按下 Enter 或空格键时可以接收 click 事件。通过将 useHandCursor 属性设置为 false 可以禁止显示手形光标,在此情况下将显示指针。

虽然使用 SimpleButton 类创建按钮是一种比较好的方法,但是可以使用 buttonMode 属性为 Sprite 提供某种类似按钮的功能。若要在 Tab 键顺序中包括 Sprite,请将 tabEnabled 属性(继承自 InteractiveObject 类,默认情况下为 false)设置为 true。此外,请考虑是否想要 Sprite 的子项支持鼠标。大部分按钮并未启用其子对象的鼠标交互性操作,因为此操作会混淆事件流。若要对所有子对象禁用鼠标交互性操作,则必须将 mouseChildren 属性(继承自 DisplayObjectContainer 类)设置为 false

如果将 buttonMode 属性与 MovieClip 类(该类是 Sprite 类的子类)一起使用,则按钮可能会具有一些增加的功能。如果包括具有 _up、_over 和 _down 标签的帧,则 Flash Player 将提供自动状态更改功能(类似于 ActionScript 的以前版本中为用作按钮的影片剪辑提供的功能)。没有时间轴的 Sprite 不可以使用这些自动状态更改,因此没有要加标签的帧。



实现
    public function get buttonMode():Boolean
    public function set buttonMode(value:Boolean):void
creatingContentPane属性 
creatingContentPane:Boolean  [读写]

容器使用内部内容窗格控制滚动。容器创建内容窗格时,creatingContentPanetrue,以便忽略或阻止某些事件。



实现
    public function get creatingContentPane():Boolean
    public function set creatingContentPane(value:Boolean):void
defaultButton属性 
defaultButton:IFlexDisplayObject  [读写]

指定为容器的默认按钮的 Button 控件。当容器中的控件具有焦点时,按 Enter 键与单击此 Button 控件的效果相同。



实现
    public function get defaultButton():IFlexDisplayObject
    public function set defaultButton(value:IFlexDisplayObject):void
doubleClickEnabled属性 
doubleClickEnabled:Boolean  [读写]

指定此对象是否接收 doubleClick 事件。默认值为 false,这意味着在默认情况下,InteractiveObject 实例不接收 doubleClick 事件。如果将 doubleClickEnabled 属性设置为 true,实例在其范围内接收 doubleClick 事件。InteractiveObject 实例的 mouseEnabled 属性也必须设置为 true,以便对象能够接收 doubleClick 事件。

设置此属性不会调度任何事件。必须使用 addEventListener() 方法为 doubleClick 事件添加事件侦听器。



实现
    public function get doubleClickEnabled():Boolean
    public function set doubleClickEnabled(value:Boolean):void
dropTarget属性 
dropTarget:DisplayObject  [只读 (read-only)]

指定拖动 sprite 时经过的显示对象,或放置 sprite 的显示对象。



实现
    public function get dropTarget():DisplayObject
focusManager属性 
focusManager:IFocusManager  [只读 (read-only)]

获取控制此组件及其同级组件的焦点的 FocusManager。每个弹出框都有自己的焦点循环,因此也有自己的 FocusManager 实例。为确保使用的实例正确,请使用此方法。



实现
    public function get focusManager():IFocusManager
focusRect属性 
focusRect:Object  [读写]

指定此对象是否显示焦点矩形。它可以采用三个值中的一个:truefalsenulltruefalse 值按预期工作,指定是否显示焦点矩形。null 值指示此对象遵循舞台的 stageFocusRect 属性。



实现
    public function get focusRect():Object
    public function set focusRect(value:Object):void
graphics属性 
graphics:Graphics  [只读 (read-only)]

指定属于此 sprite 的 Graphics 对象,在此 sprite 中可执行矢量绘画命令。



实现
    public function get graphics():Graphics
hitArea属性 
hitArea:Sprite  [读写]

指定一个 sprite 用作另一个 sprite 的点击区域。如果 hitArea 属性不存在或者其值为 nullundefined,则 Sprite 本身将用作点击区域。hitArea 属性的值可以是对 Sprite 对象的引用。

可以随时更改 hitArea 属性;修改后的 Sprite 会立即使用新的点击区域行为。指定为点击区域的 Sprite 不必是可见的;虽然不可见,但其图形形状仍会作为点击区域被检测。

注意:必须将指定为点击区域的 Sprite 的 mouseEnabled 属性设置为 false。否则,可能无法使用 Sprite 按钮,因为将是指定为点击区域的 Sprite(而不是 Sprite 按钮)接收鼠标事件。



实现
    public function get hitArea():Sprite
    public function set hitArea(value:Sprite):void
horizontalScrollPosition属性 
horizontalScrollPosition:Number  [读写]

水平滚动条的当前位置。此值等于可滚动表面的左边缘和当前可见表面最左侧的片段之间的距离(以像素为单位)。



实现
    public function get horizontalScrollPosition():Number
    public function set horizontalScrollPosition(value:Number):void
mouseChildren属性 
mouseChildren:Boolean  [读写]

确定对象的子项是否支持鼠标。如果对象支持鼠标,则用户可以使用鼠标与其交互。默认值为 true

当您使用 Sprite 类的实例(而不是使用 SimpleButton 类)来创建按钮时,此属性很有用。当您使用 Sprite 实例来创建按钮时,您可以选择使用 addChild() 方法添加其它 Sprite 实例来修饰按钮。此过程可能导致鼠标事件出现意外行为,因为当您期望父实例成为鼠标事件的目标对象时,作为子项添加的 Sprite 实例却可能成为目标对象。要确保父实例用作鼠标事件的目标对象,您可以将父实例的 mouseChildren 属性设置为 false

设置此属性不会调度任何事件。您必须使用 addEventListener() 方法才能创建交互式功能。



实现
    public function get mouseChildren():Boolean
    public function set mouseChildren(value:Boolean):void
mouseEnabled属性 
mouseEnabled:Boolean  [读写]

指定此对象是否接收鼠标消息。默认值为 true,这意味着在默认情况下,显示列表上的任何 InteractiveObject 实例均接收鼠标事件。如果将 mouseEnabled 设置为 false,实例不接收任何鼠标事件。显示列表上的该实例的任何子级都不会受到影响。要更改显示列表上对象的所有子级的 mouseEnabled 行为,请使用 flash.display.DisplayObjectContainer.mouseChildren

设置此属性不会调度任何事件。您必须使用 addEventListener() 方法才能创建交互式功能。



实现
    public function get mouseEnabled():Boolean
    public function set mouseEnabled(value:Boolean):void
numChildren属性 
numChildren:int  [只读 (read-only)]

返回此对象的子项数目。



实现
    public function get numChildren():int
soundTransform属性 
soundTransform:SoundTransform  [读写]

控制此 sprite 中的声音。



实现
    public function get soundTransform():SoundTransform
    public function set soundTransform(value:SoundTransform):void
tabChildren属性 
tabChildren:Boolean  [读写]

确定对象的子项是否支持 Tab 键。为对象的子项启用或禁用 Tab 切换。默认值为 true



实现
    public function get tabChildren():Boolean
    public function set tabChildren(value:Boolean):void
tabEnabled属性 
tabEnabled:Boolean  [读写]

此处的方法通常只位于 IInteractiveObject 中,但为了保持向后兼容,它们的始祖方法必须直接包含在 IFlexDisplayObject 中,因此这些方法还必须位于单独的包含文件中,以便在 ITextField 中使用



实现
    public function get tabEnabled():Boolean
    public function set tabEnabled(value:Boolean):void
tabIndex属性 
tabIndex:int  [读写]

指定 SWF 文件中的对象按 Tab 键顺序排列。默认情况下,tabIndex 属性为 -1,这意味着没有为该对象设置任何 Tab 索引。

如果 SWF 文件中当前显示的任何对象包含 tabIndex 属性,则禁用 Tab 键自动排序,而使用该 SWF 文件中对象的 tabIndex 属性来计算 Tab 键顺序。这个自定义的 Tab 键排序仅包括指定了 tabIndex 属性的对象。

tabIndex 属性可以是非负整数。这些对象按照其 tabIndex 属性按升序进行排序。tabIndex 值为 1 的对象在 tabIndex 值为 2 的对象的前面。不要对多个对象使用相同的 tabIndex 值。

tabIndex 属性定义的自定义 Tab 键顺序为平构。这意味着不考虑 SWF 文件中对象的层次结构关系。SWF 文件中具有 tabIndex 属性的所有对象都排入 Tab 键顺序中,而 Tab 键顺序由 tabIndex 值的顺序确定。



实现
    public function get tabIndex():int
    public function set tabIndex(value:int):void
textSnapshot属性 
textSnapshot:TextSnapshot  [只读 (read-only)]

返回此 DisplayObjectContainer 实例的 TextSnapshot 对象。



实现
    public function get textSnapshot():TextSnapshot
useHandCursor属性 
useHandCursor:Boolean  [读写]

布尔值,指示当鼠标滑过其 buttonMode 属性设置为 true 的 Sprite 时是否显示手指形(手形光标)。useHandCursor 属性的默认值是 true。如果 useHandCursor 被设置为 true,则当鼠标滑过按钮 Sprite 时会显示用于按钮的手形光标。如果 useHandCursorfalse,则将改用箭头指针。

可以随时更改 useHandCursor 属性;修改后的 Sprite 会立即具有新的光标外观。



实现
    public function get useHandCursor():Boolean
    public function set useHandCursor(value:Boolean):void
verticalScrollPosition属性 
verticalScrollPosition:Number  [读写]

垂直滚动条的当前位置。此值等于可滚动表面的顶部边缘与当前可见表面的最顶部片段之间的距离(以像素为单位)。



实现
    public function get verticalScrollPosition():Number
    public function set verticalScrollPosition(value:Number):void
viewMetrics属性 
viewMetrics:EdgeMetrics  [只读 (read-only)]

返回具有 lefttoprightbottom 四个属性的对象。每个属性的值分别等于容器边缘四周镶边(可视元素)的粗细。

镶边包括边框粗细。如果 horizontalScrollPolicyverticalScrollPolicy 属性值为 ScrollPolicy.ON,则镶边还包括相应滚动条的粗细。如果滚动策略为 ScrollPolicy.AUTO,则即使显示滚动条,镶边度量也不包括滚动条粗细。

Container 的子类应覆盖此方法,以便在定位 Container 的子项时考虑其它镶边。例如,Panel 类的 viewMetrics 属性应返回一个对象,该对象的 top 属性包括 Panel 容器的标题栏的粗细。



实现
    public function get viewMetrics():EdgeMetrics
方法详细信息
addChild()方法
public function addChild(child:DisplayObject):DisplayObject

将一个 DisplayObject 子实例添加到该 DisplayObjectContainer 实例中。子项将被添加到该 DisplayObjectContainer 实例中其它所有子项的前(上)面。(要将某子项添加到特定索引位置,请使用 addChildAt() 方法。)

如果添加一个已将其它显示对象容器作为父项的子对象,则会从其它显示对象容器的子列表中删除该对象。

参数

child:DisplayObject — 要作为该 DisplayObjectContainer 实例的子项添加的 DisplayObject 实例。

返回
DisplayObject — 在 child 参数中传递的 DisplayObject 实例。
addChildAt()方法 
public function addChildAt(child:DisplayObject, index:int):DisplayObject

将一个 DisplayObject 子实例添加到该 DisplayObjectContainer 实例中。该子项将被添加到指定的索引位置。索引为 0 表示该 DisplayObjectContainer 对象的显示列表的后(底)部。

例如,下例在索引位置 0、2、1 处分别显示 a、b、c 三个显示对象:

b 在 c 之上,c 在 a 之上

如果添加一个已将其它显示对象容器作为父项的子对象,则会从其它显示对象容器的子列表中删除该对象。

参数

child:DisplayObject — 要作为该 DisplayObjectContainer 实例的子项添加的 DisplayObject 实例。
 
index:int — 添加该子项的索引位置。如果指定当前占用的索引位置,则该位置以及所有更高位置上的子对象会在子级列表中上移一个位置。

返回
DisplayObject — 在 child 参数中传递的 DisplayObject 实例。
areInaccessibleObjectsUnderPoint()方法 
public function areInaccessibleObjectsUnderPoint(point:Point):Boolean

指示安全限制是否会导致出现以下情况:在列表中忽略了使用指定 point 点调用 DisplayObjectContainer.getObjectsUnderPoint() 方法时返回的所有显示对象。默认情况下,一个域中的内容无法访问另一个域中的对象,除非通过调用 Security.allowDomain() 方法而允许它们这样做。

有关详细信息,请参阅以下部分:

point 参数位于舞台的坐标空间中,此坐标空间可能与显示对象容器的坐标空间不同(除非显示对象容器是舞台)。 您可以使用 globalToLocal()localToGlobal() 方法在这些坐标空间之间转换点。

参数

point:Point — 要查看其下方内容的点。

返回
Boolean — 如果点包含具有安全限制的子显示对象,则为 true
contains()方法 
public function contains(child:DisplayObject):Boolean

确定指定显示对象是 DisplayObjectContainer 实例的子项还是该实例本身。搜索包括整个显示列表(其中包括此 DisplayObjectContainer 实例)。孙项、曾孙项等,每项都返回 true

参数

child:DisplayObject — 要测试的子对象。

返回
Boolean — 如果 child 对象是 DisplayObjectContainer 的子项或容器本身,则为 true;否则为 false
getChildAt()方法 
public function getChildAt(index:int):DisplayObject

返回位于指定索引处的子显示对象实例。

参数

index:int — 子对象的索引位置。

返回
DisplayObject — 位于指定索引位置处的子显示对象。
getChildByName()方法 
public function getChildByName(name:String):DisplayObject

返回具有指定名称的子显示对象。如果多个子显示对象具有指定名称,则该方法会返回子级列表中的第一个对象。

getChildAt() 方法比 getChildByName() 方法快。getChildAt() 方法从缓存数组中访问子项,而 getChildByName() 方法则必须遍历链接的列表来访问子项。

参数

name:String — 要返回的子项的名称。

返回
DisplayObject — 具有指定名称的子显示对象。
getChildIndex()方法 
public function getChildIndex(child:DisplayObject):int

返回 DisplayObject 的 child 实例的索引位置。

参数

child:DisplayObject — 要标识的 DisplayObject 实例。

返回
int — 要标识的子显示对象的索引位置。
getObjectsUnderPoint()方法 
public function getObjectsUnderPoint(point:Point):Array

返回对象的数组,这些对象位于指定点下,并且是该 DisplayObjectContainer 实例的子项(或孙子项,依此类推)。返回的数组中将省略出于安全原因而无法访问的任何子对象。若要确定此安全限制是否影响返回的数组,请调用 areInaccessibleObjectsUnderPoint() 方法。

point 参数位于舞台的坐标空间中,此坐标空间可能与显示对象容器的坐标空间不同(除非显示对象容器是舞台)。您可以使用 globalToLocal()localToGlobal() 方法在这些坐标空间之间转换点。

参数

point:Point — 要查看其下方内容的点。

返回
Array — 一个对象数组,这些对象位于指定点下方,并且是该 DisplayObjectContainer 实例的子项(或孙项等等)。
removeChild()方法 
public function removeChild(child:DisplayObject):DisplayObject

从 DisplayObjectContainer 实例的子列表中删除指定的 child DisplayObject 实例。将已删除子项的 parent 属性设置为 null;如果没有对该子项的任何其它引用,则将该对象作为垃圾回收。DisplayObjectContainer 中该子项之上的任何显示对象的索引位置都减去 1。

垃圾回收器重新分配未使用的内存空间。当在某处变量或对象不再被主动地引用或存储时,垃圾回收器将清理其过去占用的内存空间,并且如果不存在对该变量或对象的任何其它引用,则擦除此内存空间。

参数

child:DisplayObject — 要删除的 DisplayObject 实例。

返回
DisplayObject — 在 child 参数中传递的 DisplayObject 实例。
removeChildAt()方法 
public function removeChildAt(index:int):DisplayObject

从 DisplayObjectContainer 的子列表中指定的 index 位置删除子 DisplayObject。将已删除子项的 parent 属性设置为 null;如果没有对该子项的任何其它引用,则将该对象作为垃圾回收。DisplayObjectContainer 中该子项之上的任何显示对象的索引位置都减去 1。

垃圾回收器重新分配未使用的内存空间。当在某处变量或对象不再被主动地引用或存储时,垃圾回收器将清理其过去占用的内存空间,并且如果不存在对该变量或对象的任何其它引用,则擦除此内存空间。

参数

index:int — 要删除的 DisplayObject 的子索引。

返回
DisplayObject — 已删除的 DisplayObject 实例。
setChildIndex()方法 
public function setChildIndex(child:DisplayObject, index:int):void

更改现有子项在显示对象容器中的位置。这会影响子对象的分层。例如,下例在索引位置 0、1、2 处分别显示 a、b、c 三个显示对象:

c 在 b 之上,b 在 a 之上

在使用 setChildIndex() 方法并指定一个已经占用的索引位置时,唯一发生更改的位置是显示对象先前的位置和新位置之间的位置。所有其他位置将保持不变。如果将一个子项移动到比它当前的索引更低的索引处,则这两个索引之间的所有子项的索引引用都将增加 1。如果将一个子项移动到比它当前的索引更高的索引处,则这两个索引之间的所有子项的索引引用都将减小 1。例如,如果上例中的显示对象容器名为 container,则可以通过调用以下代码来交换带有 a 和 b 标记的显示对象的位置:

container.setChildIndex(container.getChildAt(1), 0);

该代码产生以下对象排列:

c 在 a 之上,a 在 b 之上

参数

child:DisplayObject — 要为其更改索引编号的 DisplayObject 子实例。
 
index:int — 生成的 child 显示对象的索引编号。

startDrag()方法 
public function startDrag(lockCenter:Boolean = false, bounds:Rectangle = null):void

允许用户拖动指定的 Sprite。Sprite 将一直保持可拖动,直到通过调用 Sprite.stopDrag() 方法来明确停止,或直到将另一个 Sprite 变为可拖动为止。在同一时间只有一个 Sprite 是可拖动的。

三维显示对象将跟随鼠标,并且 Sprite.startDrag() 将在由显示对象定义的三维平面中移动对象。或者,如果显示对象为二维对象和三维对象的子对象,则二维对象将在由三维父对象定义的三维平面中移动。

参数

lockCenter:Boolean (default = false) — 指定是将可拖动的 Sprite 锁定到鼠标位置中央 (true),还是锁定到用户首次单击该 Sprite 时所在的点上 (false)。
 
bounds:Rectangle (default = null) — 相对于 Sprite 父级的坐标的值,用于指定 Sprite 约束矩形。

stopDrag()方法 
public function stopDrag():void

结束 startDrag() 方法。通过 startDrag() 方法变为可拖动的 Sprite 将一直保持可拖动状态,直到添加 stopDrag() 方法或另一个 Sprite 变为可拖动状态为止。在同一时间只有一个 Sprite 是可拖动的。

swapChildren()方法 
public function swapChildren(child1:DisplayObject, child2:DisplayObject):void

交换两个指定子对象的 Z 轴顺序(从前到后顺序)。显示对象容器中所有其它子对象的索引位置保持不变。

参数

child1:DisplayObject — 第一个子对象。
 
child2:DisplayObject — 第二个子对象。

swapChildrenAt()方法 
public function swapChildrenAt(index1:int, index2:int):void

在子级列表中两个指定的索引位置,交换子对象的 Z 轴顺序(前后顺序)。显示对象容器中所有其它子对象的索引位置保持不变。

参数

index1:int — 第一个子对象的索引位置。
 
index2:int — 第二个子对象的索引位置。