偶在线程中弹出一个非模式的对话框,但对话框弹出后就死了,一直都找不到解决的方法
刚刚在论坛里找到解决的方法,呵呵,论坛就是好啊
可以在工作线程中弹出对话框的,但是需要给它加上消息循环,方法如下:
CDlgAnother* p_dlg;//“请稍候……”对话框
UINT ShowThread(void * pParam)
{
p_dlg=new CDlgAnother;
p_dlg->Create(IDD_DIALOG1,NULL);
p_dlg->ShowWindow(SW_SHOW);
MSG msg;
while (GetMessage(&msg, NULL, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return 0;
}
void CThreadWindowDlg::OnButton1()
{
AfxBeginThread( ShowThread, NULL);
}
测试通过,能够正常相应消息循环