肯定是逻辑问题
可能在onitdialog之前就有问题

解决方案 »

  1.   

    sleep让整个程序睡死了,执行你的if语句只是0.000几秒的事情,所以你的程序始终是sleep的,不能让主窗体线程sleep
      

  2.   

    while(1) ----》 一直循环::Sleep(3000); ----》将程序挂起3秒钟 if(.....) 
              break; ---》如果if不成立,则不会停止循环,意思就说会一直挂着
      

  3.   

    如果你非要在主线程里死循环的话
    就用 
    eg:
    MSG msg;
    while(msg.message!=WM_QUIT||msg.message!=WM_CLOSE)
    {

    if(PeekMessage(&msg, NULL, 0, 0, PM_REMOVE))
    {
    TranslateMessage(&msg); 
    DispatchMessage(&msg);
    }
    else ......