ActionScript 3动态调用按钮

时间:2009-05-19 20:10:26

标签: actionscript-3 actionscript

我试图访问菜单中的按钮。我只想添加侦听器来加载XML文件中的项目。

问题是,当我有一个字符串“Var1”时,我不知道如何调用一个名为“Var1_btn”的按钮。

有谁知道如何从for循环调用按钮?

for each(var chapter in presentation_xml.*)
{
    chapter + "_btn".addEventListener(MouseEvent.MOUSE_DOWN, traceit);
}

是我想出来的......

4 个答案:

答案 0 :(得分:1)

假设您将xml加载到名为presentationXML的变量中,它就像这样:

for each(var chapter in presentationXML.*)
{
    this[chapter + "_btn"].addEventListener(MouseEvent.MOUSE_DOWN, traceit);
}

答案 1 :(得分:1)

您可以使用:

for each(var chapter in presentation_xml.*)
{
    this[chapter + "_btn"].addEventListener(MouseEvent.MOUSE_DOWN, traceit);
}

但您也可以使用getChildByName,如下所示:

for each(var chapter in presentation_xml.*)
{
    var myBtn:MovieClip = getChildByName(chapter + "_btn");
    myBtn.addEventListener(MouseEvent.MOUSE_DOWN, traceit);
}

这是when to use getChildByName上的一篇好文章。

答案 2 :(得分:0)

的DisplayObjectContainer :: getChildByName()

答案 3 :(得分:0)

最好使用chapter.toString()。

同样的效果,但其他编码器会阅读它并明白,当与字符串文字连接时,该章节正在从XML转换为字符串表示。