Форум: "Основная";
Текущий архив: 2004.10.17;
Скачать: [xml.tar.bz2];
ВнизПауза на программу? Найти похожие ветки
← →
Артем К. (2004-09-17 04:36) [0]Здравствуйте, уважаемые мастера!
Подскажите пожалуйста, как установить "паузу" на программу, т.е. чтобы определенное количество времени, программа, как-бы, подвисала.
Заранее спасибо!
← →
Fedia (2004-09-17 04:39) [1]Функция sleep(1000{на одну секунду});
← →
Артем К. (2004-09-17 04:52) [2]>>Fedia
Спасибо!
← →
SiDChik © (2004-09-28 13:17) [3]а теперь скажите как поставить паузу чтоб только ход выполнения тормозился а не программа..........
Ответе на мыло
← →
Amoeba © (2004-09-28 13:40) [4]
> SiDChik © (28.09.04 13:17) [3]
А сам хоть понял, что спросил?
← →
Apl (2004-09-28 14:08) [5]Создатй поток и меняй ему приоритет и получишь желаемые тормоза
← →
Fedia (2004-09-28 23:04) [6]Если я правильно понял вопрос.
Ответ от Defunct © (18.09.04 21:25) [1] Var Flag: Boolean;
Procedure Suspend(AFlag:Boolean);
Begin
Flag := AFlag;
While Flag Do
Begin
Sleep(10);
Application.ProcessMessages;
End;
End;
Suspend(True); - остановит программу
Suspend(False); - продолжит.
С условием, что приложение не использует доп. потоков.
← →
KSergey © (2004-09-29 06:14) [7]> Suspend(True); - остановит программу
Навсегда...
← →
Fedia (2004-09-29 06:29) [8]KSergey © (29.09.04 06:14) [7]
>Навсегда...
Я бы так не утверждал. Советую для начала попробовать.
← →
Fedia (2004-09-29 06:41) [9]Или это был тонкий юмор :)
← →
KSergey © (2004-09-29 07:43) [10]> [8] Fedia (29.09.04 06:29)
> >Навсегда...
> Я бы так не утверждал. Советую для начала попробовать.
А что пробовать-то? Укажите мне, пожалуйста, при каких условиях сей цикл прервется в данном случае???
← →
KSergey © (2004-09-29 07:44) [11]Прошу прощения
Только сейчас разглядел, что Flag объявлен снаружи
← →
KSergey © (2004-09-29 07:45) [12]К стати, тогда лучше вот это
> Begin
> Sleep(10);
> Application.ProcessMessages;
> End;
заменить наBegin
WaitMessage;
Application.ProcessMessages;
End;
← →
46_55_41_44 © (2004-09-29 13:25) [13]procedure Delay(MSecs: Longint);
var
FirstTickCount, Now: Longint;
begin
FirstTickCount := GetTickCount;
repeat
Application.ProcessMessages;
{ allowing access to other controls, etc. }
Now := GetTickCount;
until (Now - FirstTickCount >= MSecs) or (Now < FirstTickCount);
end;
Взято из RxLib - VCLutils.pas
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.10.17;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.039 c