Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.01.29;
Скачать: CL | DM;

Вниз

Проблема с задержкой   Найти похожие ветки 

 
irishka001 ©   (2006-01-12 15:51) [0]

Всем, добрый день!
У меня такая проблема. Я осуществляю задержку следующим образом:
procedure TForm1.Delay(msecs : Longint);
var
 FirstTick : longint;
begin
 FirstTick:=GetTickCount;
 repeat
   Application.ProcessMessages;
 until GetTickCount-FirstTick >= msecs;
end;

Вызываю, соответсвенно как delay(5000) - задержка на 5 с. Проблема в том, что работает только на рабочей станции, на сервере задержка не осуществляется.


 
umbra ©   (2006-01-12 16:07) [1]

приведенный код должен работать. может быть сам метод не вызывается?


 
irishka001 ©   (2006-01-12 16:09) [2]

Метод вызывается. Заменила его на другой, и все заработало:
procedure TForm1.Delay(ms : longint);
{$IFNDEF WIN32}
var
TheTime : LongInt;
{$ENDIF}
begin
{$IFDEF WIN32}
Sleep(ms);
{$ELSE}
TheTime := GetTickCount + ms;
while GetTickCount < TheTime do
Application.ProcessMessages;
{$ENDIF}
end;


 
Ega23 ©   (2006-01-12 17:00) [3]

Удалено модератором


 
IceBeerg ©   (2006-01-12 17:09) [4]

Удалено модератором


 
гвест   (2006-01-12 18:35) [5]

слип лучше не делать, так как он приостанавливает выполнение потока, а это значит, что у тебя сообщения не будут никакие обрабатываться (например, та же отрисовка окна)



Страницы: 1 вся ветка

Текущий архив: 2006.01.29;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.056 c
15-1136799701
Хинт
2006-01-09 12:41
2006.01.29
Помогите выбрать оформление


3-1132752186
NetName
2005-11-23 16:23
2006.01.29
обновление таблицы ADO


4-1132233343
Hadroran
2005-11-17 16:15
2006.01.29
Получение описателя в меню


9-1124205351
ArtemESC
2005-08-16 19:15
2006.01.29
DirectDraw.pas


2-1137154318
ASMSoft
2006-01-13 15:11
2006.01.29
РАДАР