![]() |
Событие над фигурой
вобщем ситуация такая: есть глобальный спрайт, в нем несколько дочерних спрайтов, в каждом из которых Shape'ы.
В приемнике событий(MouseEvent'ы click и over) мне нужны localX и localY относительно каждого из дочерних спрайтов. То есть получателями событий должны быть не дочерние спрайты, а то что внутри них. Пробовал повесить событие на фигуру(Shape) ту что в дочернем спрайте. Событие не возникает. Теперь вопрос: что не так? Код AS3:
|
Так вы же сами и ответили на свой вопрос. Если прочитать три последних предложения в обратном порядке.
|
Цитата:
|
Порядок наследования шейпа: Shape -> DisplayObject -> EventDispatcher -> Object
Порядок наследования шейпа спрайта: Sprite -> DisplayObjectContainer -> InteractiveObject -> DisplayObject -> EventDispatcher -> Object А MouseEvent.CLICK является событием у InteractiveObject, который не входит в цепочку наследованиия Shape. |
Оборачивайте шэйпы в спрайты и слушайте события спрайтов, в общем.
|
Цитата:
|
Shape неинтерактивный, измените на Sprite детей, и с контейнера ловите события детей
|
| Часовой пояс GMT +4, время: 19:04. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.