Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Передача переменной в обработчик (http://www.flasher.ru/forum/showthread.php?t=165377)

PolarWolf 22.08.2011 14:18

Передача переменной в обработчик
 
Код AS3:

for (var i:int=0; i<cont1.length; i++)
{                               
    arr_obj[i].addEventListener(MouseEvent.MOUSE_DOWN, function onClick(e:MouseEvent):void{
    obj_ug++; snd.play(); arr_name[i] = ' '; count();});                               
}

Возник вопрос, как в данном случае в обработчик передать переменную i, чтобы при нажатии на объект arr_obj[i], соответственно удалялся объект arr_name[i]?

BezDelnik 22.08.2011 14:23

на сколько я понял, arr_obj - это массив..
Код AS3:

for (var i:int=0; i<cont1.length; i++) {                                
    arr_obj[i].addEventListener(MouseEvent.MOUSE_DOWN, onClick);                               
}
 
function onClick(event:MouseEvent):void {
    var indx:int = arr_obj.indexOf(event.currentTarget);
    obj_ug++;
    snd.play();
    arr_name[indx] = ' ';
    count();
}


Genzo 22.08.2011 14:23

самый простой вариант : задайте параметр arr_obj[i] в котором будете хранить i и в обработчике события обращайтесь e.target as arr_obj_classname . param

cleptoman 22.08.2011 15:09

Код AS3:

arr_name[indx] = ' ';

а это чего? )

PolarWolf 22.08.2011 15:11

Спасибо за помощь!)


Часовой пояс GMT +4, время: 16:43.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.