addChild具有循环,不同的名称和访问变量

时间:2017-03-11 10:14:22

标签: actionscript-3 flash

这是我的代码

stop();
var card:mc;
for (var c:int = 1; c <= 2; c++){
    card = new mc()
    card.name = "card"+c
    addChild(card);
    this["card" + c].gotoAndStop(c);
    trace(["card" + c].var1);
    trace(["card" + c].var2);
}

在影片剪辑中,我在第1帧和第2帧中有两个名为var1和var2的变量

但我收到错误#1010:术语未定义且没有属性。     在Untitled_fla :: MainTimeline / frame1()

1 个答案:

答案 0 :(得分:4)

显示对象名称与父对象内的字段名称不同。通常使用getChildByName(name)和类型转换。在您的代码中,您不需要它,因为您的对象已经分配给局部变量:

stop();
var card:mc;
for (var c:int = 1; c <= 2; c++){
    card = new mc()
    card.name = "card"+c
    addChild(card);
    card.gotoAndStop(c);
    trace(card.var1);
    trace(card.var2);
}