易截截图软件、单文件、免安装、纯绿色、仅160KB

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


相关文档:

Delphi的命令行编译命令

Borland出品的Delphi,有着闪电般的编译速度,但是在界面控件使用较多、工程项目较大的时候,编译一个工程仍需要一段时间,打开庞大的Delphi IDE,也需要时间。其实,在一个工程开发结束,调试完成之后的Release编译,完全可以用命令行来执行,因为Delphi的编译器参数不像C++编译器那样复杂。
  笔者把Delphi联机手册 ......

在Delphi中使用正则表达式

//参考地址:http://www.wangchao.net.cn/bbsdetail_41190.html
一、微软RegExp
      1. 下载并安装最新版的"Microsoft(r) Windows(r) Script"
  2. RegExp包含在vbscript.dll中所以我们必须先注册regsvr32 vbscript.dll
  注(安装了Ie5后默认已经包含该控件)
  3.在Delph ......

Delphi Pubic Function

function GetFileSizeString(const pFileName: String):String;
var
iFileSize: Int64;
begin
Result := '0';
iFileSize := FileSizeByName(pFileName);
Result := IntToStr(iFileSize);
end;
  function WinExecAndWait(strFileName: string; uCmdShow: UINT): DWORD;
var
cAppName: array ......

Delphi双向链表类

unit DvsLinkingClass;
interface
uses
Windows, Messages, SysUtils, Classes, Controls, Forms, Dialogs;
type
PRecLinkNode = ^RecLinkNode;
RecLinkNode = record
NodeMsg: String;
Counter: Integer;
Previous: PRecLinkNode;
Next: PRecLinkNode;
end;
TLinkingClass = class
......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号