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

Вниз

Пауза на программу?   Найти похожие ветки 

 
Артем К.   (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;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.029 c
14-1096229816
Gero
2004-09-27 00:16
2004.10.17
Музыка апокалипсиса


14-1096344369
КаПиБаРа
2004-09-28 08:06
2004.10.17
Настройка оперы


14-1096377918
Koala
2004-09-28 17:25
2004.10.17
Формат файла *.djvu


4-1095284915
Wind
2004-09-16 01:48
2004.10.17
Буфер обмена


14-1096536754
X9
2004-09-30 13:32
2004.10.17
Дрова на звук для мат. платы Gigabyte GA-8SQ800





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский