![]() |
MOUSE_LEAVE в загруженной swf
Всем привет,
В первом swf ловится событие MOUSE_LEAVE. Код AS3:
Error #1009: Cannot access a property or method of a null object reference. Можно ли как нибудь решить эту проблему, как нибудь обратиться к stage "родительского" swf и слушать MOUSE_LEAVE из него? P.S. Я временно решил задачу, отслеживанием координат мыши, но мне кажется это не достаточно надежно, скорость реакции меньше. с MOUSE_LEAVE работает гораздо лучше (если swf на подгружать в другой swf, а запустить отдельно) |
Если swf загружается, то нужно им подписаться на событие ADDED_TO_STAGE. Вот как оно отработает, тогда stage уже не будет null
|
все дело что он обращается к своему stage, который прекращает существовать, как только он подгружается в другой swf, поэтому он не знает к чему обращаться, поскольку иерархия мувиклипов изменилась, поэтому пишите просто -
Код AS3:
нужно подписаться как вам говорили к событию добавлению к stage - Код AS3:
Код AS3:
|
Большое спасибо :)
|
AlexDesinger, исходя из вашей логики, MOUSE_LEAVE шлёт любой DisplayObject (что неправильно) и что parent — всегда Stage.
|
etc
то, что MOUSE_LEAVE только для stage, че то забыл, ну а то что this.parent - там просто исходя из задания, ну думаю автор понял главное - то что после загрузки в другой swf stage уже как миниму на уровень выше, поскольку подгруженный swf в другой swf представляет из себя MovieClip. |
Цитата:
|
| Часовой пояс GMT +4, время: 22:44. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.