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

Вниз

пауза   Найти похожие ветки 

 
redlord   (2004-09-10 18:51) [0]

привет всем
как зделать паузу в выполнении проги и можноли ее потом отменить до истечения установленного времени


 
Суслик ©   (2004-09-10 18:55) [1]

для начала надо определиться со следующими аспектами:
1) что есть прога? Т.е. в чем должна выражаться пауза? В том, что интерфейс перестал реагировать на пользователя?
2) Кто выполняет отмену? Другой поток? Пользователь? Другой процесс?

Определитесь с задачей.
Тогда можно дать конкретный ответ.


 
Луарвик   (2004-09-10 18:58) [2]

sleep(1000) секндная пауза в работе процедуры...


 
Суслик ©   (2004-09-10 19:02) [3]


> sleep(1000) секндная пауза в работе процедуры...

и вы знаете как ее прервать?


 
МЯУ   (2004-09-10 22:13) [4]

есть какой-то SleepEx, ему можно передавать параметр bAlertable: LongBool. Наверно этот слип можно прервать откуда-нить. Но в хелпе про него ничё не написано (у миня по крайней мере)


 
Vit@ly ©   (2004-09-10 22:21) [5]

Попробуй создать бесконечный цикл типа
Repeat
Application.ProcessMessa..
// а здесь обработка нажатия чего-либо
// или в другом месте
Until True;


 
Anatoly Podgoretsky ©   (2004-09-10 22:54) [6]

Разбивай паузу на микропаузы.


 
KADAN ©   (2004-09-10 23:05) [7]

procedure TForm1.btnSetpauseClick(Sender: TObject);
begin // код паузы
 timer1.Enabled:=true;
 caption:="paused";
 while not cancel do begin
   sleep(100);
   application.ProcessMessages; // это для реагирования на сообщения (чтоб окошко возилось и кнопки нажимались)
 end;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin // эта процедурка вызывается таймером и кнопкой отмены паузы
 Timer1.Enabled:=false;
 cancel:=true;
 caption:="unpaused";
end;


хотя вполне может быть я перемудрил, переменная Cancel и не нужна вовсе (можно заменить на "not timer1.enabled")... но это для наглядности.



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

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

Наверх




Память: 0.48 MB
Время: 0.057 c
1-1094628544
TUser
2004-09-08 11:29
2004.09.26
После конструктора


1-1094798736
hgd
2004-09-10 10:45
2004.09.26
Как нарисовать линию на TBitmap


4-1092734043
AngelFire
2004-08-17 13:14
2004.09.26
Рекурсивное удаление директории


14-1094817750
nick-from
2004-09-10 16:02
2004.09.26
Outlook express


1-1094614063
nimble
2004-09-08 07:27
2004.09.26
Run Time, StringGrid & PageControl