| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Flash > чтоб из функции не возвращалось , пока... |
| Автор: PROCESSOR 29.8.2005, 22:12 |
| Есть функция: q=load('file.txt') в load - происходит простая загрузка файла. Но мне надо, чтобы пока загрузка не законичилось - выхода из load не происходило. Как я понимаю, надо сделать вечный цикл, проверяющий установленна переменная ( конца загрузки или нет ) и тогда выходить. Но чото не получается - при вечном цикле - FLASH виснет. Можно пример плиз. Щас пока юзаю - вызов указанной функции по загрузке . Но это не красиво. |
| Автор: AntonioBanderaz 29.8.2005, 22:23 |
| Делай через XML, в нём определены свойства или параметры, как кому угодно, getBytesLoaded() и getBytesTotal() Вешаешь на XML листинер и проверяешь когда эти два параметра будут равны, тогда и типо загрузился твой файл полностью... Я те попозже примерчик накатаю и кину... |
| Автор: PROCESSOR 29.8.2005, 23:44 | ||
| AntonioBanderaz Я это знаю. Мне другое нужно.
Надо чтобы 2 появилось после 1 ( trace смотри ). т.е. пока не выполнилось действие onLoad - выхода из функции load не было. Если задать вопрос по другому - можно ли как-то остановить код на месте, пока не выполниться условие. Вродебы простой вечный цикл , где проверяется переменаая и всё... но почему FLASH виснет. |
| Автор: AntonioBanderaz 30.8.2005, 04:23 |
| А мне интерестно зачем тебе это надо? Что у тебя в цикле стоит? Какой код вообще? |
| Автор: PROCESSOR 30.8.2005, 05:19 | ||
примерно так. Но таким циклом он даже загрузку не делает - виснет сразу. Если чото в цикл вставлять не помогает. |
| Автор: AntonioBanderaz 30.8.2005, 11:01 | ||
попробуй чуток поменять...
Я не уверен что он здесь не зависнит, у Flash'a на этот счёт свои заморочки, типо как с рекурсией, только 256 вложений может быть, да и прикинь, что будет если у человека комп слабый... Cltkfk ,s aeyrwbzvb b yt vfzkcz/// =) |
| Автор: AlDev 30.8.2005, 16:10 |
| если для файла с переменными - юзай loadVars |
| Автор: AntonioBanderaz 31.8.2005, 02:04 |
| Alex Batsuev -ему-же другое нужно, ему нужен аналог wait(); т.е. остановить выполнение кода пока что-то там не будет равно чуму-то там... Это прикольно конечно, удобненько станет, если сделать чтобы ресурсы проца в это время не жрал бесконечными переборами и циклами, рекурсиями, и прочей подобной байдой "ВАЩЕ" супер было бы... |
| Автор: AlDev 31.8.2005, 04:10 | ||||
проще просто передавать ссылку на объект, где ьписано событие onLoad. как вариант, делай setInterval:
в load добавь свой код. Тогда ты просто создаешь событие, проверяющее загрузку. Дело в том, что с функцией очень тяжело в этом плане работать и проще просто создать событие или установить property. для работы с событиями можно юзать то, что я тут сверху понаписал потом можно юзать класс mx.events.EventDispatcher как 3-й способ - watch. ещё кое-что интересное на эту тему от john-а: http://potapenko.com/rus/articles/conveyor.htm |