for 迴圈含Timer的問題!!! |
|
s123456
一般會員 發表:8 回覆:1 積分:1 註冊:2006-08-28 發送簡訊給我 |
各位工程師大大們,有個間題想請教一下, 就是此 for 迴圈在執行的時後,當Timer1的時間到時,便跑去執行Timer1的觸發程式. 而執行完 Timer1 程式後,是否 就不會跳回此 for 迴圈呢? 就辨法 執行完 Timer1程式後就回到 for 迴圈呢? 然後可以 執行 Timer1觸發程式 10次 謝謝! //========================================================== for (int m=0;m<10;m ) { Edit1->Text=m; Timer1->Enabled=true; } //========================================================== |
nickcai2002
一般會員 發表:3 回覆:20 積分:24 註冊:2004-11-18 發送簡訊給我 |
如下: 試看看吧.
void __fastcall TForm1::Timer1Timer(TObject *Sender) { Label1->Caption=Label1->Caption.ToIntDef(0) 1; Timer1->Enabled=false; } //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { Button1->Enabled=false; for (int m=0;m<10;m ) { //-- Timer before fun() Timer1->Enabled=true; while(Timer1->Enabled) { Application->ProcessMessages(); }; //-- Timer Aftre fun() } Button1->Enabled=true; } Button1->Enabled=true; } //--------------------------------------------------------------------------- ===================引 用 文 章=================== 各位工程師大大們,有個間題想請教一下, 就是此 for 迴圈在執行的時後,當Timer1的時間到時,便跑去執行Timer1的觸發程式. 而執行完 Timer1 程式後,是否 就不會跳回此 for 迴圈呢? 就辨法? 執行完?? Timer1程式後就回到 for? 迴圈呢?? 然後可以 執行? Timer1觸發程式? 10次 謝謝! |
pcboy
版主 發表:177 回覆:1838 積分:1463 註冊:2004-01-13 發送簡訊給我 |
迴圈不要執行 Timer1 中的程式, 而將程式做成一個副程式, 讓 for 和 Timer1 使用
這樣不會有跑去 Timer1 不回來的情況 for (int m=0;m<10;m ) { Edit1->Text=m; ProcABC(); } void __fastcall TForm1::Timer1Timer(TObject *Sender) { Timer1->Enabled=false; ProcABC(); Timer1->Enabled=true; }
------
能力不足,求助於人;有能力時,幫幫別人;如果您滿意答覆,請適時結案! 子曰:問有三種,不懂則問,雖懂有疑則問,雖懂而想知更多則問! |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |