【求助】如何当符合条件时中断循环。(50分)

  • 主题发起人 lost2003
  • 开始时间
L

lost2003

Unregistered / Unconfirmed
GUEST, unregistred user!
有三个Form:Form1,Form2,Form3。Form1上有一个Button1,我要实现如下的事件:
procedure TForm1.Button1Click(Sender: TObject);
var
i,j:integer;
begin
j:=5;
for i:=0 to 9 do
begin
if i=j then
Form2.show;
break;
end
else
Form3.Show;
end;

我只想当i=j 的时候只显示Form2,然后中断程序;否则只显示Form3.(当符合条件时中断循环)。请问我应该
如何写??
 
不用break,用exit试试
 
exit啊!退出循环
 
i,j:integer;
begin
j:=5;
i:=0;
while i<>J do
begin
Form3.Show;
inc(i);
if i=j then
Form2.show;
end
end;
 
应该是这样:
procedure TForm1.Button1Click(Sender: TObject);
var
i,j:integer;
begin
j:=5;
for i:=0 to 9 do
begin
if i=j then
begin //你这里少了一个begin
Form2.show;
exit
//用这个函数
end
else
begin
Form3.Show;
end;
end;
end;
 
用exit不行,他是退出整个过程,还是用break退出循环吧!不过你这个循环有点问题啊
form3 show了好多次啊.如果只想当i=j 的时候只显示Form2,然后中断程序;否则只显示Form3.
用条件句来实现就行了,何必用循环呢?
procedure TForm1.Button1Click(Sender: TObject);
var
i,j:integer;
begin
j:=5;
for i:=0 to 9 do
begin
if i=j then
begin //你这里少了一个begin
Form2.show;
break
//用这个函数
end
else
Form3.Show;
end;
end;
 
procedure TForm1.Button1Click(Sender: TObject);
var
i,j:integer;
begin
j:=5;
Form3.Show;
for i:=0 to 9 do
if i=j then
begin
Form2.show;
break;
end;
end;

 
procedure TForm1.Button1Click(Sender: TObject);
var
i,j:integer;
flag:boolean;
begin
j:=5;
for i:=0 to 9 do
begin
if i=j then
begin
flag:=true;
break;
end
end;
if flag then form2.show
else form3.show;
 
procedure TForm1.Button1Click(Sender: TObject);
var
i,j:integer;
begin
j:=5;
for i:=0 to 9 do
begin
if i=j then
begin
Form2.show;
Form3.Hide
break;
end
else begin
Form2.Hide
Form3.Show;
end;
end;
end;
 
很简单,到delphi试一下就知道,纸上谈兵总不好
 
多人接受答案了。
 
顶部