Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Порядок выполнения при загрузке из файла (http://www.flasher.ru/forum/showthread.php?t=146407)

Advin 07.11.2010 01:50

Порядок выполнения при загрузке из файла
 
Здравствуйте.
Есть пакет, в котором есть класс (класс I), в конструкторе которого производится загрузка из файла.
После окончания происходят определенные действия
….addEventListener(Event.COMPLETE,…
{

}

Есть другой пакет, в котором есть класс (II) который инициирует загрузку. В классе II используются загруженные данные.

На данный момент все бодро выполняется, только обработка происходит до завершения загрузки.

Как добиться того, чтобы до окончания загрузки ничего не происходило?

Верно ли я понимаю, что теоретически можно в классе (II) прослушивать события из класса I.

AS3 только начал изучать, буду благодарен за указание направления дальнейших изысканий.

Hidest 07.11.2010 03:56

Верно понимаете, что можно слушать (и не только теоретически)... Можете кидать событие из хендлера по Event.COMPLETE, и во втором классе подписаться на новое событие, имея ссылку на первый класс (а раз инициируете загрузку из второго, то ссылку и так уже имеете). Можете вообще клонировать событие вместо создания нового (хотя, это так и так создание нового, но не потребуются дополнительные телодвижения по передаче всех сопутствующих событию данных).

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

Mur4ik 07.11.2010 04:01

Цитата:

Сообщение от Advin (Сообщение 948071)
Верно ли я понимаю, что теоретически можно в классе (II) прослушивать события из класса I.

И практически тоже, класс II слушает класс I на предмет того что все там у него готово и дальше действует по своему алгоритму. В свою очередь класс I отправляет событие о том что данные готовы (dispatchEvent(...)), а уж тот кому эти данные нужны подпишется, поймает и обработает.

Advin 07.11.2010 12:19

Благодарю за Вашу помощь.


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

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