【问题标题】:addChild with looping, different name, and access variable具有循环、不同名称和访问变量的 addChild
【发布时间】:2017-08-01 17:12:12
【问题描述】:

这是我的代码

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()

【问题讨论】:

    标签: actionscript-3 flash


    【解决方案1】:

    显示对象名称与父对象内的字段名称不同。通常您使用 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);
    }
    

    【讨论】:

    • 你好,谢谢你的回答,但是如果我追踪到循环代码之外呢?
    • 我已经被trace(MovieClip(getChildByName("card"+c)).kanan);谢谢
    猜你喜欢
    • 1970-01-01
    • 2016-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多