Actionscript 3 在adobe animate中按名称访问动态movieclips时出现问题

Actionscript 3 在adobe animate中按名称访问动态movieclips时出现问题,actionscript-3,Actionscript 3,我已经做了一百万次了,但在这里它不起作用 我在佛罗里达州的animate.fla里面有一个游戏。在这个剪辑中,我生成了一个视图目标区域来放置石头。好的,TargetArea是我库中的一部简单电影 我可以看到所有的东西,我可以点击这个区域,得到道具的名字,我可以得到游戏中剪辑的名字 但我无法使用game_mc[clipname]访问它 for (var i:int = 1; i<= 20; i++){ var targetArea:TargetArea = new TargetAre

我已经做了一百万次了,但在这里它不起作用

我在佛罗里达州的animate.fla里面有一个游戏。在这个剪辑中,我生成了一个视图目标区域来放置石头。好的,TargetArea是我库中的一部简单电影

我可以看到所有的东西,我可以点击这个区域,得到道具的名字,我可以得到游戏中剪辑的名字

但我无法使用game_mc[clipname]访问它

for (var i:int = 1; i<= 20; i++){
    var targetArea:TargetArea = new TargetArea();
    targetArea.txt.text = String(i);
    var modu = ((i-1) %5);
    targetArea.x = 100 + modu * 340;
    var abs = int((i-1)  / 5);
    targetArea.name = "targetarea_" + String(i)+ "_mc";
    targetArea.mouseChildren = false;
    targetArea.y = 100 + (abs * 200) ;
    game_mc.addChild(targetArea);
}

for(var x:int=0;x < game_mc.numChildren;x++) {
    trace (game_mc.getChildAt(x).name);
}

for (var i:int = 1; i< 20; i++){
    var targetName:String = "targetarea_" + i + "_mc"               
    trace( game_mc[targetName].x);
}

for(var i:int=1;i我认为分配给TargetArea实例的名称不会自动转换
将其附加到DisplayObject的属性中
使用AS3之前使用的阵列访问访问MovieClips的非相干方式。
更优雅的解决方案是使用getChildByName()检索子级

此外,如果game_mc是MovieClip或动态类的实例,则可以使用以下方法将TargetArea实例作为其属性:

game_mc[targetArea.name] = targetArea;
这样,您可以在以后使用game_mc[name].property访问它们

game_mc[targetArea.name] = targetArea;