Вниз
Скачать: CL | DM;

Как оставить циклическую процедуру?   Найти похожие ветки 

 
JIuraradg   (2004-11-16 19:35) [0]

Есть некотороая процедура, которая приобретает циклический вид (при невыполнении определенного условия для выхода) с помощью оператора goto. Как можно прервать ее выполнение щелкнув на кнопку?


 
novice_man ©   (2004-11-16 19:46) [1]

var
Form1: TForm1;
done: boolean;

procedure  TForm1.........
begin
done := true;
while done do begin
if <......> then done := false;
Application.ProcessMessages
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
done := false;
end;

Можно так.


 
Riant   (2004-11-17 01:03) [2]

break


 
GuAV ©   (2004-11-17 01:17) [3]

Riant   (17.11.04 1:03) [2]
break


нет. цикл реализован

> с помощью оператора goto
.

поэтому правильный ответ - другим goto.


 
GEN++ ©   (2004-11-17 01:29) [4]

Условием окончания цикла должно быть либо выполнение условий
естественного окончания либо установка done в true
см [1]. А уж как реализован цикл: если
 if ... then goto - то goto за пределы цикла,
если do  while или repeat until - то с помощью break


 
Германн ©   (2004-11-17 04:15) [5]

Первое и самое главное - в процедуре должен быть вызов процедуры Application.ProcessMessages. Где и как ее расположить -решать тебе. Если, конечно, твоя процедура выполняется в основном потоке.



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

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



Память: 0.46 MB
Время: 0.042 c
8-1093608764
bug008
2004-08-27 16:12
2004.11.28
Как изменить палитру TBitmap


14-1099781091
BURN
2004-11-07 01:44
2004.11.28
Kylix 3


6-1095402145
Maxix
2004-09-17 10:22
2004.11.28
TNMSMTP - Аттач к письму


14-1100070632
Суслик
2004-11-10 10:10
2004.11.28
service pack


3-1098946570
Jungle
2004-10-28 10:56
2004.11.28
Проблема с подключением к SQL Server 2000




   Наверх