在工作者线程中启动用户界面线程的问题?
我在工作者线程中按照以下步骤创建了用户界面线程:
一、新建了一个用户界面,即对话框dialog; 二、建立对话框关联的类; 三、建立用户界面线程类(基于CWinThread)
四、在用户界面类的.CPP文件中的InitInstance()函数中创建了对话框:
BOOL CShowparamThread::InitInstance()
{
// TODO: perform and per-thread initialization here
CShowUpParam PDlg;
PDlg.Create(IDD_ShowUpParam);
PDlg.ShowWindow(SW_SHOW);
m_pMainWnd = &PDlg;
return TRUE;
}
然后在想用到用户界面线程的工作者线程函数中写了启动用户界面线程的语句:
CWinThread *pThread = AfxBeginThread(RUNTIME_CLASS(CShowparamThread),0,0,0,NULL);
但是执行了启动UI线程的语句后却并没有显示该UI线程创建的界面,是什么情况呢,请高手指导下应该怎样做才行,谢谢!
[解决办法]
CShowUpParam PDlg;不要用临时变量