PDA

Просмотр полной версии : dispatchEvent


PIL78
05.05.2007, 13:41
Извиняюсь за простой и может банальный вопрос.
Как сделать, чтобы мой класс мог бросать события? Создать событие проблем нет, а вот бросить его и подписаться с другого класса - не знаю как :(
На AS2 я это делал собственными классами.
Спасибо

etc
05.05.2007, 14:01
Наследоваться от EventDispatcher, либо завести внутренний dispatcher, с реализацией всех методов IEventDispatcher. Примеры см. в хелпе.

PIL78
05.05.2007, 18:42
спсб :)

MrSlimer
01.08.2007, 12:12
А как послать event не в пределах класса, а дальше?

У меня ситуация:
class docRoot {
var proc:Process;

public function docRoot() {
proc = new Process();

addEventListener("Done",onDone);
proc.proc();
}

private function onDone() {}
}

и в классе Process загружается и обрабатывается инфа. Надо послать event "Done" классу docRoot при завершени загрузки и обработки.

отсылаю с помощью dispatchEvent(new Event("Done"));
но чтобы заработало приходится вместо addEventListener("Done",onDone) писать: proc.addEventListener("Done",onDone);

vapes
01.08.2007, 12:26
proc.addEventListener("myEvent",this.onMyEvent);
а в самом proc классе пишешь когда надо
this.dispatchEvent(new Event("myEvent"))

Usnul
02.08.2007, 02:58
события только наследуются.

DenisS1
31.10.2009, 19:55
А что делать, если в классе-приёмнике события нет ни одного экземпляра класса, посылающего событие?

Felicast
31.10.2009, 21:30
вас не понятно. если нет ни одного экземпляра класса, посылающего событие, я думаю, вам не к чему будет подписаться.

dimarik
01.11.2009, 23:01
А что делать, если в классе-приёмнике события нет ни одного экземпляра класса, посылающего событие?

Это очень серьезное заявление.