VC在线程中操作界面

一种方法是用消息,请看:VC在线程中操作界面。

另一种方法是直接在线程中获得控件的句柄并操作之。步骤如下:

首先定义:

HANDLE hThread;
DWORD ThreadID;
然后在合适的地方创建线程,必须要用以下方法创建,因为要把程序的this指针当作参数传给线程函数。
hThread=CreateThread(NULL,
		     0,
		     (LPTHREAD_START_ROUTINE)XXThreadFunc,
		     this,
0, &ThreadID);
 最后,线程函数这么写 
  

void UARTThreadFunc(LPVOID lpParam)
{
	CHodUARTDlg *pDlg = (CHodUARTDlg*)lpParam;

	while(1)
	{
		((CStatic*)(pDlg ->GetDlgItem(IDC_EDIT_MESSAGE)))->SetWindowText("Hello !");
	}
}
搞定!



你可能感兴趣的:(VC)