![]() |
проблема у далением листнеров
Есть два класса Main и Menu.
В Main созданю экзепляры класса Menu: Код AS3:
Код AS3:
Почему myTarget.removeEventListener(MouseEvent.ROLL_OVER, onOver); Работает только в том случае, если myTarget.name == 'menu1', то есть клип, в котором удаляю слушателя и клип, по которому кликаю один и тотже ? и как заставить его работать на любом экземпляре Menu ? |
Вероятно myTarget не имеет слушателя. Проверьте какой объект подписывается на событие.
Код AS3:
|
Код AS3:
|
Да, да,. вот только что сам нашел))
this это получается просто инстанс класса. Сейчас я просто вынес функции onOver и onOut в public и добавил их при генерации меню: Код AS3:
Код AS3:
|
Не говоря об ошибках, может вам поможет:
Код AS3:
|
Прямой способ есть. В данном виде, это походит на ночной кошмар. Но без полной картнины сказать ничего не возможно. Предпочтительнее в Menu сделать public метод, который будет добавлять элементы меню, навешивать на них слушателей и т.д. И соответсвенно метод который будет удалять.
|
ну да, так теперь и сделал.
в Menu полностью генерирую меню, сразу при генерации раздаю слушателей, и в том числе тот слушатель, который удаляет (о котором был основной вопрос). То есть класс Menu, при вызове, теперь полностью организует работу всего моего меню. Всё правильно? |
Вполне
|
Всем большое спасибо)))
|
| Часовой пояс GMT +4, время: 07:21. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.