Application.ProcessMessage 和 Application.HandleMessage有什么区别? ( 积分: 100 )

  • 主题发起人 主题发起人 太阳系
  • 开始时间 开始时间

太阳系

Unregistered / Unconfirmed
GUEST, unregistred user!
procedure Delay(msec:integer);
//延时函数,msec 为微秒(千分之1秒)
var
FirstTickCount : real;
begin
FirstTickCount := GetTickCount();
FirstTickCount := FirstTickCount + msec;

While FirstTickCount > GetTickCount() do
Application.HandleMessage; //关键在这里

end;

上面的延时函数中,如果用Application.ProcessMessage则会引起CPU占用100%。
但如果用Application.HandleMessage则鼠标要移动一下程序才往下执行。

有没有更好和延时程序?
 
试试 Sleep 函数
不知道是不是你要的效果
 
sleep在程序执行时,不是会引起windows无法响应吗
 
我试过了,你做的程序没有事情呀,CPU没有占用100%
我是在一个程序中加了一个定时器,用一个LAbel来显示时间。没有事情的
 
Sleep(1000); //一般1秒就够了
 
上面只是个函数,我用在串口通讯中,有很多地方都要用到.
 
我操,这个世界没有天理了~~~~~ MD,老虎不发威,当我是病猫, 先骂人的倒有理了 我可是从来不主动得罪人的 谁要是欺负人,那就不客气了 明天把这个工具开个源,叫大家都来用用 请问你们有什么拿的出手的?自己写的东西? 说出来叫大爷我长长见识? 别不会是一群耍嘴皮子的废物吧? 需要的请关注我的 blog http://hi.baidu.com/earthsearch
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部