Понедельник, 12 Январь 2009 12:10

Проблемы использования событий в ActionScript3

Автор Александр Бушмелев
Оцените материал
(0 голосов)

При разработки игр нового кода столкнулся с проблемой предачи событий между объектами ActionScript3 в Adobe Flash CS4.

В конце концов проблема решилась, но смутные и неприятные ощущения остались. Может, что пропустил?

В соответствие с примерами с сайта adobe завел свой класс событий MyEvent, расширяющий класс Event. Однако передача событий от одного моего объекта к другому так и не заработала.
Вызов метода

dispatchEvent(new MyEvent(MyEvent.MY_CONST));

происходит, ошибок не выдается, а событие исчезает и больше нигде не появляется.

В конце концов, я определил только константы - сообщений событий и воспользовался объектами класса Event в чистом виде:

dispatchEvent(new Event(MyEvent.MY_CONST));

Второй важный момент. Похоже, что все события передаются только в пределах дерева объектов. При этом, единого корневого узла для всей программы, по всей видимости, не существует. Таким образом, если у меня на панели выложены ручками объекты, то между ними сгенерированные события не передаются.
То есть, если дерево сформировано командами addChild() или сложный клип, то между ними события передаются, в противном случае - нет.

Прочитано 5301 раз Последнее изменение Понедельник, 12 Январь 2009 12:16
Авторизуйтесь, чтобы получить возможность оставлять комментарии