Actionscript - добавление EventListener к нескольким кнопкам на сцене - PullRequest
0 голосов
/ 21 августа 2011

У меня небольшая проблема с добавлением EventListener к нескольким объектам на сцене. У меня более 40 кнопок на сцене с именами «Button01», «Button02» .. «Button40», и я ищу самый простой способ добавить EventListener для всех из них.

Создание чего-то вроде

Button01.addEventListener(MouseEvent.CLICK, doSomething)
Button02.addEventListener(MouseEvent.CLICK, doSomething)
..
Button40.addEventListener(MouseEvent.Click, doSomething)

(обратите внимание на ту же функцию). я не ищу решение: (.

Заранее спасибо.

1 Ответ

2 голосов
/ 21 августа 2011

Вы можете сделать что-то вроде этого:

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 для доступа к MovieClips. Если это не так, просто замените this ссылкой на контейнер.

...