Форум 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=132832)

TanaTiX 21.11.2009 11:14

Имя объекта
 
Создаю в цикле ряд объектов, присваиваю им имена, вешаю слушателя на клик мышки. При клике отлавливаю имя объекта, на что мне возвращается дефолтное имя, а не то, что я назначил. При этом в цикле инстанс работает корректно.
Код AS3:

for (i=1; i<n; i++) {
back=new Border(0,0,20,20);
back.name="block"+i;
trace(back.name);
back.addEventListener(MouseEvent.CLICK,onClick);
}
private function onClick(e:MouseEvent):void{
                        trace(e.target.name);
                        }

Как мне получить назначенное мной имя?

bicubic_bublic 21.11.2009 11:27

попробуйте e.currentTarget.name
и почитайте еще про различие между e.target и e.currentTarget

TanaTiX 21.11.2009 11:33

bicubic_bublic, то что надо.
Почитал доки по теме, но, честно говоря, не понял разницы. Можно небольшой ликбез по теме?

bicubic_bublic 21.11.2009 11:46

currentTarget - подписчик данного события
target - объект что вызвал событие (в данном случае может быть и любой из потомков e.currentTarget в дереве отображения для которого не отключены события мыши)

TanaTiX 21.11.2009 11:47

Спасибо.


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

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