求教简单多线程问题
野草重新 2003-10-11 06:52:26 我想让线程在主窗口中显示一行文字,可是怎么也显示不出来,请大虾指教。
线程函数:
UINT ThreadProc(LPVOID lpParam)
{
CWorkerThread *pWorkerThread=(CWorkerThread*)lpParam;
pWorkerThread->OutputMsg();
CWnd *temp=AfxGetMainWnd();
CClientDC dc(temp);
pWorkerThread->settext(&dc);
return 0;
}
settext是CWorkerThread中的函数,如下:
void CWorkerThread::settext(CClientDC *pDC)
{
CRect object;
GetClientRect(m_hWnd,&object);
int x=object.right/2,y=object.bottom/2;
pDC->SetTextAlign(TA_CENTER|TA_BASELINE);
pDC->TextOut(x,y,"thread is running");
}
请问问题出在哪里?应该怎么改?