回 帖 发 新 帖 刷新版面

主题:请问如何利用按钮退出while循环

有两个按钮,按下第一个按钮,进入循环体,打算按下第二个按钮,退出循环体,但是发现不响应,按第二个按钮按不下去,控件使用API写的,希望指教啊!

WndProc函数里的结构如下:
switch(LOWORD(wParam)
{    
case IDB_STARTBUTTON:  //第一个按钮
  flag = 1;
  while(flag)
{
   ......
}
break;

case IDB_STOPBUTTON:
flag = 0;
break;
}

回复列表 (共6个回复)

沙发

switch
case是一個多分支語句,flag是在兩個分支里面.
沒有聯繫的.

板凳

flag是全局变量,应该有联系

3 楼

要学会跟综结果,你想要的结果看一下是不是你要的。
  现在你应该看的是flag的值变了没有。

4 楼


这样试试:
int flag=0;

Onbutton1()
{
flag=1;UpdateData();}
Onbutton2()
{
flag=0;UpdateData();}
while(flag){
...}

5 楼

用static int flag = 1;代替flag = 1;,使用定义静态数据

6 楼

创建一线程执行while语句的内容,当有按钮按钮通知消息时,通知线程结束

我来回复

您尚未登录,请登录后再回复。点此登录或注册