有个checkbox按钮,当我点它的时候,他进入死循环,当我在点它的时候跳出的死循环,就跳不出来了,上午的smaltdd() 兄说开子线程,建个全局变量,跳出死循环由全局变量决定。改变变量即跳出~
但小弟的c++是不太会,都已请各位,稍微多写一点代码~~小弟在这先谢谢了

解决方案 »

  1.   

    当我点它的时候,他进入死循环,当我在点它的时候跳出的死循环,就跳不出来了
    ==========================
    进入死循环后,消息就被阻住了,你没办法再点它了,就跳不出来了,应该将死循环写在另一个线程中,大致如下:
    BOOL Is=FALSE,Exit=FALSE;
    if(!Is)
      {    Exit=FALSE;//控制线程是否退出的
          AfxBeginThread(pfnThreadProc,....);
         Is=TRUE;
      }
       else
      {
       Is=FASLE;
       Exit=TRUE;
    }//这是按钮处理函数
    void pfnThreadProc(...)
    {
      while(!Exit)
       { 
        ....//你的工作.  
       }
      
    }
      

  2.   

    点checkbox时,置全局变量为TRUE,启动线程
    再点时,置全局变量为FALSE
    线程函数里:
    while(g_loop)
    {
    }
      

  3.   

    谢谢wltg2001(红猪)和ouyh12345(五岭散人)两位兄弟