Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Задержка в цикле. (http://www.flasher.ru/forum/showthread.php?t=95703)

Juraj 12.05.2007 00:24

Задержка в цикле.
 
В цикле требуется в каждой итерации сделать задержку на пару секунд. Какой функцией это можно сделать?
Спасибо.

Artem Brigert 12.05.2007 01:23

setInterval();

Kikasso 12.05.2007 09:02

Только не в цикле!!
Код:

var i = 0;
var intervalId:Number;
function doSome(id){
 trace(i++);
 if( i > 5) clearInterval( intervalId );
 }
intervalId = setInterval( doSome, 300 );

если вы засадите интрервал в цикле, получите стопку интервалов.
Аналога sleep() во флеше нет.

Juraj 12.05.2007 10:18

Спасибо большое.

Kikasso 12.05.2007 11:14

Да, зыбыл сказать - в 8-м флеше есть еще setTimeout().
Срабатывает однократно, впрочем, можно и принудительно очистить с помощью clearTimeout или clearInterval - это синонимы.

progman 12.05.2007 11:26

а если так:
Код:

function Sleep(var timeout:Number)
{
 var t1:Number = getTimer();
 for(;;)
  if( getTimer() - t1 >= timeout) break;

}


Artem Brigert 12.05.2007 11:29

Цитата:

Сообщение от progman
а если так:
Код:

function Sleep(var timeout:Number)
{
 var t1:Number = getTimer();
 for(;;)
  if( getTimer() - t1 >= timeout) break;

}


так писали 100 лет назад ...

googleavast 12.05.2007 11:30

А как пишут сейчас?

CorC 12.05.2007 11:32

setInterval или setTimeout

progman 12.05.2007 11:32

Цитата:

Сообщение от Artem Brigert
так писали 100 лет назад ...

и че? старый код программу не портит.


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

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