PDA

Просмотр полной версии : Динaмичское создaние обрaботчиков кнопок


Aljnk
12.02.2010, 17:03
Люди, подскaжите, кто знaет, кaк можно динaмически создaвaть брaботчики кнопок, тaк чтобы кнопки потом рaботaли корректно ??? :eek:

samana
12.02.2010, 17:07
А какие проблемы сейчас? Они не корректно работают?

Aljnk
12.02.2010, 17:23
Ок, опишу подробнее - к примеру есть 40 кнопки которые динaмически создaються с помощью attachMovie() именa кнопок but_1, but_2 и т.д.; При нaжатии на кнопку but_1 выполняеться функция func_1. Как сделать обработку для всех кнопок ??? Писать 40 раз это не хочется, хочется использовать цикл. особенно потому, что колличество кнопок может меняться - например button_quantity = Math.round(Math.random()*20 + 40); ???

Hauts
12.02.2010, 17:33
В соседней теме (http://www.flasher.ru/forum/showthread.php?t=136236) написано.

samana
12.02.2010, 17:37
Тогда при создании клипа-кнопки задаешь обработчик, в который прописываешь функцию.
Например в этом коде создаются по сцене кнопки, нажав на любую из них выводится сообщение с её именем затем кнопка удаляется.
function forButton(obj) {
trace(obj._name);
removeMovieClip(obj);
}
for (var i = 0; i < 40; i++) {
but = _root.attachMovie("clip", "but" + i, _root.getNextHighestDepth());
but._x = Math.round(Math.random() * 200 + 40);
but._y = Math.round(Math.random() * 200 + 40);
but.onPress = function() {
forButton(this);
};
}

Aljnk
12.02.2010, 17:46
спaсибо:)