通过调用 DisplayObjectContainer 容器的
addChild()
或
addChildAt()
方法,可以向该容器添加对象。对于舞台,在创作过程中还可以通过创建对象来向其显示列表添加对象;对于组件,则可以通过将组件从“组件”面板中拖到舞台上来向其显示列表添加对象。若要使用 ActionScript 向容器添加对象,首先要通过使用
new
运算符调用对象的构造函数来创建该对象的一个实例,然后再调用
addChild()
或
addChildAt()
方法将它放置到舞台上或显示列表中。
addChild()
方法将该对象放置到显示列表中的下一位置,而
addChildAt()
则指定该对象将要添加到的位置。如果您指定的位置已经被占用,则位于该位置以及该位置之上的对象均会向上移动 1 个位置。DisplayObjectContainer 对象的
numChildren
属性指定了它包含的显示对象的数目。可以通过调用
getChildAt()
方法并指定位置来检索显示列表中的对象,如果您知道对象的名称,也可以通过调用
getChildByName()
方法来检索对象。
注:
使用 ActionScript 添加组件时,如果要通过名称在显示列表中访问该组件,您必须为该组件的 name 属性分配一个名称。
下面的示例列出了显示列表中三个组件的名称和位置。首先,将一个 NumericStepper、一个 Button 和一个 ComboBox 拖到舞台上,使它们相互重叠,并为它们分别指定实例名称
aNs
、
aButton
和
aCb
。然后将以下代码添加到时间轴第 1 帧的“动作”面板中:
var i:int = 0;
while(i < numChildren) {
trace(getChildAt(i).name + " is at position: " + i++);
}
在“输出”面板中应看到以下行:
aNs is at position: 0
aButton is at position: 1
aCb is at position: 2