怎样终止一个正在执行的循环?

syx007 2003-09-30 03:24:44
在某个事件里有一个循环,要执行很长时间,但我想中途中断其执行,该怎么做?
...全文
102 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
hiflower 2003-09-30
  • 打赏
  • 举报
回复
就是上面的各种方法了
tccb 2003-09-30
  • 打赏
  • 举报
回复
使用多线程
Alanwn 2003-09-30
  • 打赏
  • 举报
回复
break
sheepcyk 2003-09-30
  • 打赏
  • 举报
回复
linzhisong(無聊) 方法可行
ziqing 2003-09-30
  • 打赏
  • 举报
回复
break!!
zyc 2003-09-30
  • 打赏
  • 举报
回复
应该说用一个变量来判定循环是否终止的方法是最简单的,不过ProcessMessage必须要插入到循环中,否则此方法无效。
如果你不想修改循环的代码,用线程把它包装起来,也可以随时终止它,不过这种方法会带来较多的问题。
lincanwen 2003-09-30
  • 打赏
  • 举报
回复
同意linzhisong(無聊)
用一个窗体级变量

for i:=0 to 1000 do
begin
if 变量 then break; //
application.processmessage;//
end;

在中断按钮中:
变量:=true;
lxhong1980 2003-09-30
  • 打赏
  • 举报
回复
application.processmessage;
hongliqiu 2003-09-30
  • 打赏
  • 举报
回复
做成线程。
IORILI 2003-09-30
  • 打赏
  • 举报
回复
在循环中加 application.processmessage;
然后通过代码处理
linzhisong 2003-09-30
  • 打赏
  • 举报
回复
用一个变量

if 变量=true then break;

然后在循环里加
application.processmessage;

for i:=0 to 1000 do
begin
if 变量 then break;
application.processmessage;
end;
pandengzhe 2003-09-30
  • 打赏
  • 举报
回复
循环中加中断相应语句
lincanwen 2003-09-30
  • 打赏
  • 举报
回复
好象不可以。

不过可以在循环中添加: application.processmessage;
这样程序还能响应其他的操作。

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧