Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.023 c
14-1109916856
ex080D:07BBh
2005-03-04 09:14
2005.03.27
Юмор


6-1106575071
Progh
2005-01-24 16:57
2005.03.27
Сохранить вложение из idMessage


1-1110451078
Оля
2005-03-10 13:37
2005.03.27
Защита от отладчика


14-1110272617
olookin
2005-03-08 12:03
2005.03.27
Win98 отказывается устанавливаться...


1-1110868049
Asail
2005-03-15 09:27
2005.03.27
Некорректная работа BiDiMode ....




   Наверх