Главная страница
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.046 c
14-1094377822
Baron
2004-09-05 13:50
2004.09.26
Кто играл на деньги


14-1094177442
Думкин
2004-09-03 06:10
2004.09.26
С днем рождения! 3 сентября


4-1092198053
DelphiN!
2004-08-11 08:20
2004.09.26
Как проверить зарегестрирован ли сервис в системе?


3-1093507039
Пуртик
2004-08-26 11:57
2004.09.26
Как выполнить несколько запросов в ADO?


3-1093683807
Yakudza
2004-08-28 13:03
2004.09.26
Проблема с ADODataSet