Просмотр полной версии : Собственные события
dmitry bond
21.06.2012, 09:21
Добрый день
Искал везде информацию, но так и не понял как реализовывается.
Передо мной стоит задача:
Есть класс Coins
В нем переменная a
В классе Pro нужно событие, которое будет слушать изменение переменной a и при ее изменении вызывать обработчик события. Как можно такое реализовать?
http://help.adobe.com/ru_RU/ActionScript/3.0_ProgrammingAS3/WS5b3ccc516d4fbf351e63e3d118a9b90204-7e53.html
ЗлОй ПрОграММер
21.06.2012, 09:54
можно ещё использовать сеттер чтобы слушать изменение переменной
Deimos747
21.06.2012, 09:55
private var _a: Object;
public function get a(): Object
{
return _a;
}
public function set a(value: Object): void
{
_a = value;
dispatchEvent(new Event(Event.CHANGE));
}
самый простой способ
Добавлено через 1 минуту
А в классе Pro вешается слушатель на события Event.CHANGE на Coins
dmitry bond
21.06.2012, 11:29
1180: Call to a possibly undefined method dispatchEvent. (C:\Users\Nexy\Desktop\проекты\bot up\coins.as) project.fla /project/src-project
Сам класс я импортировал:
import flash.events.EventDispatcher;
Как быть ?
Coins должен наследоваться от EventDispatcher или реализовывать IEventDispatcher.
dmitry bond
21.06.2012, 11:52
1061: Call to a possibly undefined method addEventListener through a reference with static type Class.
Сделал наследование, теперь в классе Pro не может найти метод addEventListener в Coins
И как вы пытаетесь добавить слушатель?
dmitry bond
21.06.2012, 12:12
Coins.addEventListener(Event.CHANGE, gogo)
Надо слушать не класс а его экземпляр
var coins:Coins=new Coins();
coins.addEventListener(Event.CHANGE, gogo)
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.