嗨,我有一个MovieClip,我打算在运行时用我的document类将它添加到显示列表中,因为会有很多它的实例。MoviClip“盒子”中还有3个MovieClip实例,这三个实例中的每一个都有两个实例。它看起来是这样的:
box
circle 0
oval0
oval1
circle 1
oval0
oval1
circle 2
oval0
oval1下面是我现在拥有的代码:
package
{
import flash.display.MovieClip;
public class BoxSet extends MovieClip
{
private var theArr:Array;
public function BoxSet()
{
run();
}
private function run():void
{
theArr = new Array();
for (var i:uint = 0; i<this.numChildren; i++)
{
var mc:MovieClip = this["n" + i] as MovieClip;
addChild(mc);
theArr[i] = mc;
mc.alpha = 0;
}
}
public function setAlpha(num:uint):void
{
theArr[num].alpha = 1;
}
}
}它是有效的,但我想知道是否有更有效的方法来做这件事,或者我所拥有的是不是一个好的方法?任何帮助都将不胜感激。
发布于 2011-02-17 09:19:15
只要您只想按编号而不是按名称引用MovieClip实例,您所拥有的内容就看起来非常有效。
发布于 2011-02-17 08:53:42
在as3.0中有两种使用嵌套mcs的方法
1.绝对引用(刚性) 2.相对引用(灵活)。
在类似mc3->嵌套在mc2->嵌套在mc1中的mcs的结构中,从主时间线访问mc3的绝对反射将类似于root.mc1.mc2.mc3
相对引用-在任何阶段,都可以使用以下命令引用mc的父级
this.parent
或通过扩展abv结构的任何其它mcs。
sry 4打字错误我有点着急
https://stackoverflow.com/questions/5023363
复制相似问题