delphi实现延时的方法,很多人首先就想到用timer控件,这里我们不用timer控delphi直接用settimer函数实现延时的方法...
delphi實現(xiàn)延時的方法,很多人首先就想到用timer控件,這里我們不用timer控件看如何來實現(xiàn)? 首先介紹一下settimer函數(shù)的使用:
例如:settimer(self.handle,0,1000,@timerfun);
參數(shù)依次為:??
? 1.調(diào)用函數(shù)的handle,windows會定時發(fā)送WM_TIMER消息給此handle??
? 2.timer的標(biāo)識,可設(shè)置為0??
? 3.定時器的值,單位是毫秒??
? 4.回調(diào)函數(shù)???
//回調(diào)函數(shù):當(dāng)定時器到點后,就會調(diào)用該函數(shù),該函數(shù)的格式有一定的講究,可以參照以下寫:
procedure? timerfun(handle:Thandle;msg:word;identer:word;dwtime:longword);stdcall;??????
begin
? showmessage('到點了');
? killtimer(handle,identer);//關(guān)閉定時器
end;
//其中的identer是定時器的句柄
//主函數(shù):在主函數(shù)里定義定時器并開始運作:比如在一個按紐事件里寫:
procedure TForm1.Button1Click(Sender: TObject);
var
? identer:integer;
begin
?? identer:=settimer(0,0,2000,@timerfun);
?? if identer=0 then //定時器沒有創(chuàng)建成功。
?? exit;
end;
轉(zhuǎn)載于:https://www.cnblogs.com/94YY/archive/2011/05/11/2043490.html
總結(jié)
以上是生活随笔為你收集整理的delphi实现延时的方法,很多人首先就想到用timer控件,这里我们不用timer控delphi直接用settimer函数实现延时的方法...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SetTimer函数用法
- 下一篇: 线性同余算法 (LCG)