![]() |
Объясните пожалуйста почему не работает следующий код?
Код:
package {Наверное не совсем понятно... Лучше на примере 2 классов: 1-й класс: Код:
package {Код:
package {но тогда зачем мне диспатчер нужен? если я знаю мувик. В проекте же я не буду знать его. Экземпляров будет много и надо чтобы все реагировали на событие |
Определитесь, у кого и на какие события вы подписываетесь.
Потому как вы подписываетесь на события объекта, которые он не ващает. |
ну это я понял. но как же тогда поступить? допустим я не просто создаю var mon=new mySprite();, а в цикле создаю несколько эземпляров. и надо чтобы по определенному событию в классе Main все они отреагировали. Не подскажите как это сделать?
|
В сторону всплывающих событий смотрите.
|
Я разобрался. Спасибо товарищу __etc! Для тех кто будет искать подобный ответ покажу на примере как я сделал. Если это не рационально, поправьте
Для того чтобы отовсюду принимать события я сделал класс синглтон от класса EventDispatcher. Например так: Код:
package {Код:
package {Код:
package { |
Прочитайте ещё раз про всплывающие события.
|
хм. ну вот ваши слова: "....событие от детей поднимается вверх по родителям..." Я так понимаю это и есть всплывающие события. Но мне то надо не от детей к родителям, а в любом классе. Вот мой пример это реализовывает. Я не прав?
точнее принцип то конечно от детей к родителям :) но все таки почему еще раз прочитать я не понимаю.. |
этк, ссылку в студию
|
|
Цитата:
Greenish, у вас оба класса наследуются от DisplayObject, поэтому почему бы не применить встроенную модель событий? Организовывать некий синглтон, рассылающий события — очень спорное и неэффективное решение. |
| Часовой пояс GMT +4, время: 03:01. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.