delphi中的处理事件 application.processmessages


本文整理自网络,侵删。

 

以下是引用片段:
delphi中的处理事件 application.processmessages

procedure TForm1.Button2Click(Sender: TObject);
var
I, J, X, Y: Word;
begin
I := 0;
J := 0;
while I < 64000 do
begin
Randomize;
while J < 64000 do
begin
Y := Random(J);
Inc(J);
Application.ProcessMessages; //处理事件
end;
X := Random(I);
Inc(I);
end;
Canvas.TextOut(10, 10, 'The Button2Click handler is finished');
end;


代码中红色的一行的作用:

如果你运行一个非常耗时的循环,那么在这个循环结束前,你的程序可能不会响应任何事件,你按按钮没有反应,程序设置无法绘制窗体,看上去就如同死了一样,这有时不是很方便,例如于终止循环的机会都没有了。这时你就可以在循环中加上这么一句,每次程序运行到这句时,程序就会让系统响应一下消息,从而使你有机会按按钮,窗体有机会绘制。


所起作用类似于VB中DoEvent方法.

相关阅读 >>

Delphi adoconnection1 连接excel表格读取数据

Delphi程序支持外部参数

Delphi textfile utf8编码读写

Delphi 计算程序运行时间

Delphi操作文本文件简介

Delphi实现win10下Delphi 10.3.1 inline hook 调试器法获取寄存器并修改

Delphi判断系统是否64位

Delphi通过setupapi.dll列举和停用硬件设备

Delphi实现win10下Delphi 10.3.1 inline hook 修改mac网卡地址之getadaptersaddresses

如何在Delphi中禁用关于“返回值...可能未定义”的警告?

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...