进入“parent.child.MC”

时间:2014-05-22 17:30:48

标签: actionscript-3 flash

我有一个像这样的结构 - holder.lineX.lineoverlay

我想在所有创建的孩子上访问movieclip“lineoverlay”

如果我这样做:

MovieClip(this.parent).lineX.lineoverlay.visible = false; 

它有效,但我并不总是知道有多少“行”动画片段,因为它们是在运行时创建的。

我试过了:

for (var i:uint = 1; i < MovieClip(parent).numChildren; i++) {
    MovieClip(this.parent).getChildAt(i).lineoverlay.visible = false;
}

但是我一直收到错误,因为flash将“lineoverlay”视为未定义的属性而不是movieclip。

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

getChildAt返回DisplayObjectDisplayObject不是动态对象(与Movieclip不同)。所以在这种情况下只需将它投射到movieclip。

这应该有效:

for (var i:uint = 1; i < MovieClip(parent).numChildren; i++) {
    MovieClip(MovieClip(this.parent).getChildAt(i)).lineoverlay.visible = false;
}