Форум: "Основная";
Текущий архив: 2004.09.19;
Скачать: [xml.tar.bz2];
Внизprocedure Найти похожие ветки
← →
AzIN (2004-09-02 17:38) [0]Ув. мастера, есть в моей проге процедура proc, в ней выполняется цикл. Процедура начинает выполняться при нажатии на кнопку button1. Как остановить цикл в процедуре например нажатием на кнопку button2?
← →
BillyJeans (2004-09-02 17:40) [1]Application.ProcessMessages
← →
antonn © (2004-09-02 17:44) [2]в цикл добавь переменную b:boolean(изначально false) и делай проверку:
if b then exit;
А в кнопке2 поставь b:=true;
P.S. Довольно корявое решение, но с [1] у меня не получалось...
← →
Суслик © (2004-09-02 17:45) [3]написать обработчки нажатия для button2, в нем устанавливать флаг, переодически вызывать [1], также ререодически проверять знанчеие флага.
← →
Суслик © (2004-09-02 17:46) [4]без [1] не будет обрабатываться нажатие кнопки.
[1] надо переодически вызывать.
Хотя, все зависит от того, какой цикл - может там уже где-нить вызыватеся [1]. Тогда, конечно, еще раз его вызывать не нужно.
← →
AzIN (2004-09-02 18:37) [5]Можете на примере показать. Я недавно делфи учить начал.
← →
Плохиш © (2004-09-02 18:44) [6]
> AzIN (02.09.04 18:37) [5]
Там в делфи столько примеров, что можешь заизучаться
← →
AlexKocharin (2004-09-02 18:59) [7]
procedure TForm1.Button1Click(Sender: TObject);
begin
stop:=false;
label1.Caption:="цикл запущен";
repeat
{цикл}
application.ProcessMessages;
until stop or application.Terminated;
label1.Caption:="цикл прерван";
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
stop:=true;
end;
end.
На форме помещаешь 2 кнопки TButton и метку TLabel,
обьявляешь переменную stop там, где Form1:
var
Form1: TForm1;
stop:boolean;
Жмешь F9 и радуешься результату.
← →
AzIN (2004-09-02 19:15) [8]спасибо!
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.09.19;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.03 c