死循环
我编写了一个程序,当点击Button1的时候满足条件开始接收数据,但是条件是一直满足的,于是陷入了死循环,Button2的功能是停止接收数据,但是由于死循环,程序就不响应了,我怎么点击Button2停止接收数据。
[解决办法]
在循环找那个加个Application->Progress();就可以点停止按钮了
[解决办法]
int x;
//---------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
x = 1;
while (x) {
Application->ProcessMessages();
// 處理程序
}
}
//---------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
x = 0;
}
//---------------------------------------
int x; //設置為類變量或全域變量
//---------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
// 開始接收數據
x = 1;
while (x) {
Application->ProcessMessages();
// 接收數據程序碼寫在這裡...
}
// 停止接收數據程序碼寫在這裡...
}
//---------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
x = 0;
}
//---------------------------------------