等待非模态对话框返回,类似模态对话框功能

extern BOOL fFinished;

MSG msg;

while (!fFinished)
{
    while (::PeekMessage (&msg, NULL, 0, 0, PM_NOREMOVE))
    {
        if (!AfxGetApp ()->PumpMessage ())
        {
              PostQuitMessage (0);
              return;
        }
    }

    LONG lIdle = 0;
    while (AfxGetApp ()->OnIdle (lIdle++));
}

如上代码,设置一个类似全局变量fFinished, 在模态对话框中,当该对话框关闭时,置fFinished为TRUE,这时,就可以继续了。

将上述代码在 ShowWindow之后即可。

原文地址:https://www.cnblogs.com/lin1270/p/3487367.html