Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Вывести "Loading..." перед продолжительным вычислением (http://www.flasher.ru/forum/showthread.php?t=145994)

sinya 25.10.2010 20:47

Вывести "Loading..." перед продолжительным вычислением
 
Привет!
Столкнулся с проблемой. Есть ф-ция, которая вычисляет кое-что. На эти вычисления уходит около трех секунд, в этот период плеер временно зависает. Я хочу перед запуском вычислений вывести слово "Loading...". Если делать так:
Код:

var l = new Loading();
addChild(l);
compute(); //вычисляющая ф-ция

то мувиклип Loading не успевает вылезти на экран до того как плеер задумывается.
Я попробовал сделать так:
Код:

var l = new Loading();
l.addEventListener(Event.ADDED_TO_STAGE, onLoadingAdded);
addChild (l);

function onLoadingAdded(e:Event){
compute();
}

Но экземпляр Loading все-равно не успевает показаться на экране. Почему? Как быть?

udaaff 25.10.2010 20:49

Откладывайте вычисления до следующего кадра.

nOobCrafter 26.10.2010 11:30

делаете таймер на 1 сек, отображаете надпись, далее при сработке таймера запускаете функцию, если не требуется анимации, то через ентерфрейм на следующем кадре, как советует тов. udaaff

Psycho Tiger 26.10.2010 15:35

Достаточно запустить таймаут на любое сколь-угодно-малое число. Эти вычисления начнуться всё равно после того, как завершаться текущие.


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

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