比如说,在ListBox里我添加了一个CString类型的成员变量m_str,我想用m_str.GetCount或m_str.GetText之类的方法,但这些在线程中就不能用了。
使用控件的成员变量和函数要用控件的对象或指针!应该定义一个CListBox类型的变量;
创建线程时要传递CXXXDlg 的指针过去就能调用CXXXDlg中定义的变量、控件了。
举例如下:
CWinThread * mThread = NULL;
mThread = AfxBeginThread(mThreadTest,this,THREAD_PRIORITY_NORMAL,0,0,NULL);
UINT mThreadTest(LPVOID pParam)
{
CXXXDlg *pDlg = (CXXXDlg *)pParam;
pDlg->....
ExitThread(0);
return 0;
}
本文介绍如何在MFC多线程环境中正确访问ListBox控件的CString类型成员变量m_str。通过实例展示了如何在子线程中通过指向对话框的指针访问和操作控件。
1891

被折叠的 条评论
为什么被折叠?



