我在将StageListener添加到舞台上的多个对象时遇到了一些问题。我在舞台上有40个按钮,名为“Button01”,“Button02”..“Button40”,我正在寻找最简单的方法来向所有人添加EventListener。
创建类似
的内容Button01.addEventListener(MouseEvent.CLICK, doSomething)
Button02.addEventListener(MouseEvent.CLICK, doSomething)
..
Button40.addEventListener(MouseEvent.Click, doSomething)
(注意相同的功能)。 不是我正在寻找的解决方案:(。
提前致谢。
答案 0 :(得分:2)
你可以这样做:
var cnt:Number;
var cnt_str:String;
for (cnt = 1; cnt <= 40; cnt++) {
if (cnt < 10) {
cnt_str = "0" + String(cnt);
} else {
cnt_str = String(cnt);
}
this["Button" + cnt_str].addEventListener(MouseEvent.CLICK, doSomething);
}
这假设此代码位于DocumentClass中,或者位于您的时间轴上,因为它使用this
来访问MovieClip。如果不是这种情况,那么只需用容器的引用替换this
。