现有一个静态文本控件(IDC_DATA_ON_TIME_thread),位于一个由MFC建立的单文档视图产生的无模式对话框上。然后,在对话框内中编写了用于多线程的函数:UINT DataLineThread(LPVOID lp),目的是用于在静态文本控件文本中绘图。现在我想在DataLineThread函数中获取这个静态文本控件的窗口的指针,从而获得这个控件窗口的绘图环境。我是这样做的:
//获取应用程序主窗口指针
CWnd* pMainWnd = AfxGetMainWnd();
//获取系统视图工作区窗口指针
CWnd* pClient = pMainWnd->GetWindow(GW_CHILD);
CWnd* pData = pClient->GetDlgItem(IDC_DATA_ON_TIME_thread);//获取静态文本控件窗
口指针
CDC* pDC = pData->GetDC();//获取窗口绘图环境
编译没什么错,但运行时发现错误。
请那位高手看看错在哪里?
应该怎样在一个线程函数体中正确的获得控件窗口的指针?
多谢!!
//获取应用程序主窗口指针
CWnd* pMainWnd = AfxGetMainWnd();
//获取系统视图工作区窗口指针
CWnd* pClient = pMainWnd->GetWindow(GW_CHILD);
CWnd* pData = pClient->GetDlgItem(IDC_DATA_ON_TIME_thread);//获取静态文本控件窗
口指针
CDC* pDC = pData->GetDC();//获取窗口绘图环境
编译没什么错,但运行时发现错误。
请那位高手看看错在哪里?
应该怎样在一个线程函数体中正确的获得控件窗口的指针?
多谢!!
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货