|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
[+1 02.09.15]
Регистрация: Mar 2009
Адрес: Moscow
Сообщений: 469
|
Как сделать так, чтобы событие не передавалось потомкам контейнера
Вот у меня есть контейнер. Внутри него несколько объектов. Я хочу, чтобы эти объекты не получали уведомления о возникновении события.
Решил использовать метод, stopImmediatePropagation(). Однако он всего лишь не дает выполняться зарегестрированным приемникам. А уведомление о возникновении события посылается. Затем попробовал сделать так: private function pickup (e:MouseEvent):void { if (e.eventPhase == EventPhase.AT_TARGET) { e.target.drag(); setChildIndex (DisplayObject(e.target), numChildren - 1); e.stopImmediatePropagation(); }; }; 1120: Access of undefined property EventPhase. Поэтому прошу помочь мне найти ответ на 2 вопроса: 1) как правильно реализовать то, что я хочу сделать? 2) в связи с чем может возникать ошибка 1120? |
|
|||||
[+1 02.09.15]
Регистрация: Mar 2009
Адрес: Moscow
Сообщений: 469
|
то, что ругается, что не импортировал уже разобрался. А вот
не дает возможности реагировать детям на свои события мыши. Просто у контейнера своё событие мыши, а у ребенка свое. Когда нажимаю на контейнер, он реагирует на свое событи. Когда нажимаю на ребенка, он реагирует и на свое и на событие контейнера. Но поскольку в ребенке не определенны методы, которые есть в контейнере, то возникает ошибка на этапе выполнения. В связи с этим я и ищу способ спастись от этой самой ошибки. |
|
|||||
Нипонятнааа... Т.е. вы хотите при нажатии на контейнер чтобы реагировал только контейнер, а при нажатии на ребенка - только ребенок?
Тогда так: Непонятна строка: Цитата:
|
|
|||||
Регистрация: Jul 2009
Сообщений: 35
|
Просто ему не ясно, что событие одно. Источником является тот по кому непосредственно кликнули, а не по одному из его потомков. А контейнер только его перехватывает.
Furinax по-моему ты не до конца понимаешь разницу между target и currentTarget. |
|
|||||
[+1 02.09.15]
Регистрация: Mar 2009
Адрес: Moscow
Сообщений: 469
|
большое спасибо за подсказку, благодаря вам и К. Муку разобрался.
|
Часовой пояс GMT +4, время: 17:21. |
|
« Предыдущая тема | Следующая тема » |
|
|