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

Вниз

Как прервать выполнение программы?   Найти похожие ветки 

 
tytus   (2005-03-16 09:55) [0]

Добрый день господа. В программе есть цикл от 1 до размера файла (до 20 метров), в котором читается каждый байт и ищется два подряд идущих однинаковых байта (142). На форме хочу добавить кнопку "Отмена", и чтобы кликая по ней цикл прерывался или закрывалась форма фообще. На форме есть прогрессбар, который рисуется через Application.Processmessage. Но нажатие на кнопку ничего не дает (ее обработчик просто закрывает форму Close). Помогите как это правильно сделать.


 
КаПиБаРа ©   (2005-03-16 09:57) [1]

При нажатии на кнопку выставляй флаг.
В цикле проверяй состояние флага и если он выставлен завершай цикл.


 
KSergey ©   (2005-03-16 10:00) [2]

isTerminate: Boolean;
.............

isTerminate := FALSE;

while NOT File.Eof AND NOT isTerminate do
...

procedure TForm1.ButtonStopClick(..)
begin
  isTerminate := TRUE;
end;


 
Anatoly Podgoretsky ©   (2005-03-16 10:11) [3]

Close надо делать главной форме.


 
Virgo_Style ©   (2005-03-16 10:11) [4]

File of byte + Read ? Читай лучше в буфер. Тогда прерывание работы может и не понадобиться.



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

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

Наверх




Память: 0.47 MB
Время: 0.058 c
1-1110564923
Chroot
2005-03-11 21:15
2005.03.27
Прожиг дисков и печать документов


6-1106579610
ProManiak
2005-01-24 18:13
2005.03.27
Ошибка при загрузке документа


1-1110967349
Marat
2005-03-16 13:02
2005.03.27
DateTimePicker


1-1110869106
Alex_C
2005-03-15 09:45
2005.03.27
Как показать процесс работы?


14-1110377152
Kerk
2005-03-09 17:05
2005.03.27
500 посвящается....