![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Mar 2009
Сообщений: 357
|
как? пробовал при помощи set/get, но получилось лишь при изменении переменной в классе, содержащем set/get (в основном классе документа).
|
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Один из двух может подписаться на события другого.
|
|
|||||
|
Регистрация: Mar 2009
Сообщений: 357
|
etc, можно подробнее?
|
|
|||||
|
Регистрация: Jan 2009
Сообщений: 1,651
|
другой класс, должен в сеттере переменной генерировать событие. Основной класс подписывается на это событие.
|
|
|||||
|
Регистрация: Mar 2009
Сообщений: 357
|
iflamberg, можно пример кода или ссылку? никак не могу подружиться с геттерами.
еще такой вопрос. в осноыном классе есть экземпляр другого класса, а в другом классе - экземпляр третьего. третийкласс генерирует событие. можно ли в основном классе его слушать не создавая экземпляр этого класса? или нужно создавать цепочку событий/листенеров? как лучше передавать классу мувиклип с вложенными клипами если планируется обращение лишь к вложенным клипам? ссылкой на него или ссылками на его детей? Последний раз редактировалось loover; 14.08.2009 в 20:56. |
|
|||||
|
Цитата:
public class A extends EventDispatcher { private var _prop:int; public function get prop():int { return _prop; } public function set prop(value:int):int { _prop = value; dispathEvent(new Event(Event.CHANGED)); } } public class B { private var _a:A; private function aChangedHandler(event:Event):void { trace("Свойство _a.prop изменилось"); } public function B(a) { _a = a if (_a) { _a.addEventListener(Event.CHANGED, aChangedHandler); } } } ![]() Цитата:
__________________
я могу стать всем, если только захочу |
|
|||||
|
Регистрация: Mar 2009
Сообщений: 357
|
Felicast, спасибо, разобрался.
поторопился с ответом ). т.е. public function B() обязательно должна иметь а параметрах (скобках) класс а? как сделать, чтобы измменение переменной в другом классе рагистрировалось лишь в определенный момент? если лишь тогда добавить листенер, то, если событие уже произошло, это ни кчему не приведет. а при добавлении листенера в конструкторе класса функция листенера сработает слишком рано. получается, прийдется запускать таймер? Последний раз редактировалось loover; 15.08.2009 в 23:51. |
![]() |
![]() |
Часовой пояс GMT +4, время: 03:50. |
|
|
« Предыдущая тема | Следующая тема » |
|
|