无法引用movieClips

时间:2012-05-14 22:07:51

标签: arrays actionscript-3 button dynamic

我正在开发一个动态生成XML导航的Flash项目。现在我试图让它与数组一起工作,这样一旦我知道逻辑工作,我就可以将它调整为xml。我是as3的新手,学习有点坎坷。我一直在寻找解决方案,但我所看到的许多例子要么太简单,要么回答我的问题,要么太复杂,无法理解,因为我处于新的一面。这是我正在使用的代码。

var clientList:Array = new Array("Client1","Client2","Client3","Client4","Client5","Client6","Client7","Client8","Client9","Client10","Client11","Client12","Client13","Client14","Client15");
for each (var cName in clientList){
    var newClientBtn:btnClientNav = new btnClientNav();
    newClientBtn.x = workX;
    newClientBtn.y = workY;
    workY += newClientBtn.height;
    newClientBtn.mcClientName.text = cName;
    lContent.mcWork.addChild(newClientBtn.name);
    trace(newClientBtn);
} 

我无法确定如何正确引用动态创建的剪辑。我在按钮中有一个动态文本框,但无法弄清楚如何正确引用它来更改它,然后我的下一个问题将引用按钮来进行翻转和点击代码。我知道这可能是一件很容易解决的问题,但是我已经看了太久了,我的眼睛开始越过了......请提前感谢你提出任何建议。

1 个答案:

答案 0 :(得分:0)

为什么不将您正在创建的剪辑存储在以后可以访问的对象中?

如果你想通过名字引用一个影片剪辑,一种方法是:

var referenceMC:MovieClip = MovieClip(containerMC.getChildByName(“targetMC”));

如果是你所追求的文本字段或按钮,我相信你会做同样的事情,而是将getChildByName的结果转换为你想要的控件。

我也相信你想把这个按钮本身作为一个孩子添加,而不是将它的名字传递给你的addChild调用?