線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:5968
推到 Plurk!
推到 Facebook!

請問bcb沒有Delay這個函式嗎??

答題得分者是:nlj859
qubeley2004
一般會員


發表:52
回覆:71
積分:24
註冊:2004-07-13

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-08-31 15:45:44 IP:211.76.xxx.xxx 未訂閱
請問bcb沒有Delay這個函式嗎?? 我有include dos.h了... 可是在delay的那邊complier會出錯
nlj859
資深會員


發表:139
回覆:375
積分:322
註冊:2004-03-20

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-08-31 15:54:49 IP:163.28.xxx.xxx 未訂閱
Hello qubeley2004,    請使Sleep(),看能不能符合你的需求.     Delay program execution for a specified number of microseconds. void Sleep(unsigned milliseconds); Sleep pauses program executions as specified by the milliseconds parameter. Under Windows, Sleep is just a link to the Sleep function in the system API. Under Linux, Sleep calls the usleep library routine. ex:
void __fastcall TForm1::FormCreate(TObject *Sender)
{
  Sleep(5000); //停5秒
  ShowMessage("hi");
}
ldd
一般會員


發表:12
回覆:62
積分:19
註冊:2004-07-06

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-08-31 22:57:32 IP:61.59.xxx.xxx 未訂閱
我覺得有時候Sleep 並不好用 ,當我程式有兩個 timer去跑時....想要讓一個 timer delay時 Sleep 會使兩個 timer 停掉.....>_<....... 還是自己寫個Delay function 來的好!!!:) 可以利用 GetTickCount()....GetTickCount()的特性為每次增加為1ms 可以利用這個特性來做到Delay的效果...... long Time; Time = GetTickCount(); while((GetTickCount() - Time) < 5000) { if((GetTickCount() - Time) <= 0 ) Time = GetTickCount() ; } 這樣就可以delay 5 Sec囉:) 之前也有聽過可以用 for()來做delay 但是 每台電腦執行ㄉ速度不一樣 不好抓到正確的延遲時間.....
系統時間:2024-06-22 19:03:40
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!