全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:758
推到 Plurk!
推到 Facebook!

如何使用一個botton去停止另一個botton的while迴圈

答題得分者是:blk5743
yangdada
一般會員


發表:7
回覆:6
積分:2
註冊:2004-06-10

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-03-01 15:05:30 IP:140.124.xxx.xxx 未訂閱
 
int action;
//------------------------------------------------------------------
void __fastcall TPlant::Button3Click(TObject *Sender)
{
float value;
action=1;
while (action>0)
{
value=AD();
if(value > 0.4)
{
......
}
else if(value > 0.35)
{
....
}
else if(value > 0.3)
{
...
}
else if(value > 0.2)
{
...
}
else if(value > 0.1)
{
...
}
else
{
...
}    }
}
//-------------------------------------------------------------------
void __fastcall TPlant::Button4Click(TObject *Sender)
{
action=0;
}
請問以上的動作為什麼沒辦法正常運做 那該如合改進比較好呢? 謝謝 發表人 - yangdada 於 2005/03/01 16:06:50 發表人 - taishyang 於 2005/03/01 23:09:29
blk5743
高階會員


發表:34
回覆:371
積分:236
註冊:2003-11-17

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-03-01 15:21:13 IP:61.66.xxx.xxx 未訂閱
yangdata你好 你可以加入Application->ProcessMessages(); while (action>0) { .... Application->ProcessMessages(); } 因為你雖然在按下Button4時,讓action = 0 但是因為Button3的迴圈太快,沒辦法接收到action = 0 當你加入Application->ProcessMessages(); 他就可以接收到Button4Click的事件 => action = 0 => 跳出while (action > 0)
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-03-01 15:55:03 IP:210.68.xxx.xxx 未訂閱
yangdada您好: 您可能剛來這討論區不久, PO程式碼的方式請參考版規說明 煩請修改,感謝您的配合  < href="http://delphi.ktop.com.tw/topic.php?TOPIC_ID=48259">http://delphi.ktop.com.tw/topic.php?TOPIC_ID=48259 順心
yangdada
一般會員


發表:7
回覆:6
積分:2
註冊:2004-06-10

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-03-01 16:10:22 IP:140.124.xxx.xxx 未訂閱
感謝您的回答 受益良多~
系統時間:2024-05-11 15:31:51
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!