![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Jun 2009
Сообщений: 30
|
Ситуация такая. Пусть есть объект типа URLLoader, назовем его urlloader. Он выполняет метод urlloader.load(параметры). Далее идет строка кода, которая должна выполняться лишь после того, как этот метод загрузит результат. Как это сделать?
Для уточнения напишу фрагмент кода: Так вот нужно, чтобы в консоли написалось сначала 'from complete', а потом уже 'done'. По факту получается наоборот при вызове функции load(). |
|
|||||
|
Регистрация: Oct 2006
Адрес: Москва
Сообщений: 889
|
думаю не получится, потому как у вас код выполняется тупо построчно при этом вы просите загрузить данные данные загрузятся гораздо позже чем выполниться первый метод
попробуйте прочитать скрипт как машина: выполнить функцию по окончанию загрузки загружать данные сделать trace и тд... |
|
|||||
|
Регистрация: Jun 2009
Сообщений: 30
|
Хорошо. Тогда, может, существует иной способ решить поставленную задачу. Она у меня следующая. Есть класс, объект которого должен принять ссылку на файл, а возвратить в качестве значения результат этой загрузки.
Я пишу метод этого класса, который должен загрузить данные и возвратить их в виде XML: Что написать в теле метода? Ведь результат можно поймать только в обработчике события Event.COMPLETE, а это уже другой метод класса. Что делать? |
|
|||||
|
[+4 01.09.09]
Регистрация: Aug 2009
Сообщений: 27
|
Нужно продолжать работать с данными после выполнения события COMPLETE у урлЛоадера, в обработчике "complete_listener" генерировать свое кастомное событие что-то типа "ХМЛ Данные урлЛоадером загружены", и передавать управление слушателю этого события, а так как вы написали не получиться.
|
|
|||||
|
[+6 23.11.09]
|
а че вам не даёт продолжет кот в событии complete_listener(e:Event.COMPLETE)
в этой функции пешите чё вам надо, а если надо то вызывайте другую функкцию из функции complete_listener которая бы и выводила trace('done'); |
|
|||||
|
Регистрация: Jun 2009
Сообщений: 30
|
WRC_S, приведу пример желаемого кода:
var req:Requester=new Requester(request);//Requester - это типо написанный класс, который я не могу написать в связи с обсуждаемой проблемой. Но, допустим, он существует var result:XML=req.doRequest;//метод doRequest должен возвратить в результате объект XML, который загружается объектом URLLoader Пока что буду использовать вариант, предложенный Alex_41. Отдельное спасибо ему за идею. |
|
|||||
|
load работает ассинхронно. и то что вам нужно в любом случае не реализовать.
лучше всго при завершении загрузки самому генерировать событие, что бы потом тот, кому это нужно, отловил это событие
__________________
я могу стать всем, если только захочу |
|
|||||
|
Регистрация: Jun 2009
Сообщений: 30
|
ОК, это я уже понял. Может, тогда существует другой класс (помимо URLLoader), который может сделать то, что мне нужно?
|
|
|||||
|
Регистрация: Oct 2005
Адрес: Russia, Irkutsk
Сообщений: 742
|
прочитал 3 раза и не понял суть проблемы.
если отвечать влоб написанному то код будет выглядеть приблизителньо так
__________________
smival.com |
![]() |
![]() |
Часовой пояс GMT +4, время: 16:47. |
|
|
« Предыдущая тема | Следующая тема » |
|
|