|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Если этот код - в отдельном классе, то к экземпляру этого класса. А если Вы пытаетесь написать весь код в одном кадре таймлайна, то и нет особого смысла диспатчить событие - можно запустить нужный метод напрямую. Смысл в том, что в этом месте вся загрузка очереди закончилась, теперь делайте что хотите. Это же шаблонный код просто для примера, костяк так сказать, а мясо наращивать Вам.
Ну вот смотрите (немного ООП):
Допустим у Вас что-то типа фотогалереи. Флэшка загружается в клиент и запрашивает список фотографий на сервере. Получает xml-файл, парсит его и создает массив - список адресов картинок (массив может быть многомерный и содержать дополнительную инфу по картинкам, мы это не трогаем сейчас). В принципе это - отдельный блок задач, и вполне уместно сделать отдельный Объект в понятии ООП - Класс XMLLoader. Его экземпляр загрузит и распарсит xml-ку, подготовит данные для загрузки (и информационного сопровождения) картинок. Закончив, он диспатчит событие "список готов". У Вас в коде основного класса есть подписка на это событие от этого экземпляра XMLLoader'а, выполняется метод, запускающий загрузку изображений. В этом методе Вы создаете экземпляр другого Объекта - Класса ImageLoader, и подписываетесь на событие COMPLETE от него. Отдаете ему список адресов и говорите "грузи". Экземпляр загружает все изображения как описано в предыдущем посте, складывает их в какое-то хранилище с открытым доступом и диспатчит событие COMPLETE. Основной класс получает это событие и запускает обработчик, вызывающий уже дальнейшие действия по демонстрации этих изображений.
Для того и нужны классы, что они представляют из себя логические блоки, делающие какую-то определенную работу (специализация). Другим классам не надо ничего знать о их способах работы и устройстве (инкапсуляция). В этом простейшем примере есть Основной класс Main, который руководит парадом, он как штаб - получает сводки о происходящем и на сновании событий отдает приказы.
- Загрузить xml-ку!
(проходит время)
- "xml-ка загружена!" (XMLLoader.COMPLETE)
- Загрузить картинки из списка xml!
(проходит время)
- "Картинки загружены!" (ImageLoader.COMPLETE)
- Показать загруженные картинки!
Ни один из этих классов понятия не имеет, что происходит "внутри" другого. Каждый выполняет свою работу, и, закончив, отчитывается штабу Main. Main "забирает" результат (обычно доступ к нему организуется через геттер data, т.е. для Main, получившего событие event - event.target.data) и поручает его следующему батальону со специальным назначением.
Надеюсь я ответил на Ваш вопрос..)))
|