label loop; begin for i:=0 to 10000 do for j:=0 to 10000 do begin ... if 退出按纽是否被单击 then goto loop; ... end; loop: {不要忘了goto}; end;
做个boolean变量 判断一下不就行了
var breaked: boolean; begin for i:=0 to 10000 do begin for j:=0 to 10000 do begin ... if 退出按纽是否被单击 then begin breaked := True; break; end; ... end; if breaked then break; end; end;
procedure TForm1.Button1Click(Sender: TObject); label lLoop; var I, J: Integer; begin Tag := 0; for I := 0 to 10000 do for J := 0 to 10000 do begin Application.ProcessMessages; //不加就点不了 Caption := Format('%d,%d', [I, J]); if Tag <> 0 then goto lLoop; end; lLoop: ; end;procedure TForm1.Button2Click(Sender: TObject); begin Tag := 1; end;
loop;
begin
for i:=0 to 10000 do
for j:=0 to 10000 do
begin
...
if 退出按纽是否被单击 then
goto loop;
...
end;
loop: {不要忘了goto};
end;
判断一下不就行了
breaked: boolean;
begin
for i:=0 to 10000 do
begin
for j:=0 to 10000 do
begin
...
if 退出按纽是否被单击 then
begin
breaked := True;
break;
end;
...
end;
if breaked then
break;
end;
end;
label
lLoop;
var
I, J: Integer;
begin
Tag := 0;
for I := 0 to 10000 do
for J := 0 to 10000 do begin
Application.ProcessMessages; //不加就点不了
Caption := Format('%d,%d', [I, J]);
if Tag <> 0 then goto lLoop;
end;
lLoop: ;
end;procedure TForm1.Button2Click(Sender: TObject);
begin
Tag := 1;
end;