GetDlgItem、EnableWindow等函数在线程函数中无法使用

来源:互联网 发布:产业转型升级网络 编辑:程序博客网 时间:2024/05/17 23:46
将窗口指针传递给线程,或者申明一个全局窗口指针,使线程内可见。
例如:
UINT TestThread(LPVOID pParam)
{
CMyDlg* pDlg = (CMyDlg*)pParam;
pDlg->GetDlgItem(IDC_Button1)->EnableWindow(0);
return 0; 
}

void CMyDlg::OnBnClicked1()
{
AfxBeginThread(TestThread,this);
}
重点是对于线程函数所处位置,窗口类的声明可见、窗口类对象的指针可见,以及如果使用GetDlgItem(ID),ID的声明也应当是可见的。(一般resource.h内声明的宏工程内都可见)
0 0
原创粉丝点击