Процедура задержки выполнения



Автор: demon-777
WEB-сайт: http://delphibase.endimus.com

{ **** UBPFD *********** by delphibase.endimus.com ****
>> Процедура Delay (как в паскале)
Зависимости: Forms,Windows,SysUtils
Автор:       demon-777, [email protected], Питер
Copyright:   Выдрана из RxLib
Дата:        23 мая 2002 г.
***************************************************** }
{Delay, не загружающий процессор}
procedure Delay(Value: Cardinal);
var
F, N: Cardinal;
begin
N := 0;
while N <= (Value div 10) do
begin
SleepEx(1, True);
Application.ProcessMessages;
Inc(N);
end;
F := GetTickCount;
repeat
Application.ProcessMessages;
N := GetTickCount;
until (N - F >= (Value mod 10)) or (N < F);
end;

Пример использования:

Delay(1000); //Задержка на одну секунду

Далее: Процедурные типы »»