while true do
begin
If abc Then break;
application.ProcessMessages;
end;
abc是在其它操作中得到的变量,要在循环体里面加一个如果在10秒内abc没有得到真值就自动退出循环体。
begin
If abc Then break;
application.ProcessMessages;
end;
abc是在其它操作中得到的变量,要在循环体里面加一个如果在10秒内abc没有得到真值就自动退出循环体。
解决方案 »
- 如何提取sql的image类型数据后赋给string类型的变量?
- 程序使用excelapplication,excelworkbook,excelworksheet组件后,如果你想打开一个EXCEL文件只能看到标题?
- 请问:我已做好了一个COM,怎样在客户端调用呢?
- 请问在ADOTable中的lookup字段能否用filter过滤?如何实现?此字段并不存在当前表的数据库的!
- 想做一个如IE里清除Cookies的按钮
- 版本管理工具VSS哪里有下载
- 关于Pascal的问题,请各位老师指点!
- 送分。关于一个经常使用的函数
- 如何使MEMO的SCROLLBAR变为FLAT风格,以及响应MOUSE的ENTER,EXIT事件???
- delphi如何连接oracle8i(8.1.6)
- 请教读取一个文件中32位浮点数据的问题
- 如何实现在Dbgrid中将记录指针移动时候触发事件?
procedure TForm1.Button1Click(Sender: TObject);
var a:cardinal;
begin
a:=gettickcount;
while true do
begin
if (gettickcount-a>10000) or abc then
begin
showmessage('');
break;
end;
end;
end;
while GetTickCount - OldTime <= 10000 do
begin
If abc Then break;
application.ProcessMessages;
end;
不过你这个程序的效率实在是……
strtTime := now;
while
beign
if (SecondsBetween(now,startTime)>10) and (abc=false) then
break;
...
end
t1,t2:cardinal;t1:=gettickcount;
while true do
begin
If abc Then break
else
begin
t2:=gettickcount;
if t2-t1>10000 then
break;
end;
application.ProcessMessages;
end;
-----------------------------------------------------还好比楼上的好看一点点