Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   что сделать чтобы dispatchEvent срабатывал при создании класса (http://www.flasher.ru/forum/showthread.php?t=209544)

Sanyok 20.11.2014 05:09

что сделать чтобы dispatchEvent срабатывал при создании класса
 
помогите пожалуйста, нужно чтобы при создании класса срабатывал dispatchEvent

Код AS3:

public class Test extends EventDispatcher
        {
                public function Test():void
                {
                        dispatchEvent(new Event("test", true));
                }
        }


Wolsh 20.11.2014 09:47

Ну так он "срабатывает". Просто никто не слушает. Чтобы повесить слушателя, нужен готовый экземпляр класса Test. А готовым он будет после того как отработает конструктор. Нет слушателей — некому диспетчить.

PainKiller 20.11.2014 10:39

Неправильный подход dispatchEvent всегда можно вынести в отдельную функцию, если надо чтобы он срабатывал вместе с каким то кодом из конструктора, этот код тоже можно вынести в отдельную функцию. Соответственно, создаете экземпляр, вешаете слушатель, вызываете функцию с диспатчем.

Sanyok 20.11.2014 13:48

спасибо

КорДум 20.11.2014 13:52

А зачем диспатчить событие из конструктора класса, когда точно известно, когда событие наступает (при вызове конструктора)?


Часовой пояс GMT +4, время: 20:31.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.