
CWinApp* pwin = AfxGetApp();//获取当前应用进程的指针
CWnd* pWnd = pwin->GetMainWnd();//获取主窗口指针
CGetMainWndDlg* pDlg = (CGetMainWndDlg*)pWnd;
//主窗口指针转化成对话框类指针
pDlg->SetWindowText(_T("练习"));
CWnd* pWnd1 = pWnd->GetDlgItem(IDC_BUTTON1);//获取按钮的句柄
pWnd1->SetWindowText(_T("获取进程指针"));
UINT func1(LPVOID pParam) //线程函数
{
CString str;
for (int i = 0; i < 10;i++) {
str.Format(_T("i=%d\r\n"), i);
::OutputDebugString(str);
Sleep(500);
}
return 0;
}
void CGetMainWndDlg::OnBnClickedButton2()
{
CWinThread* pp = AfxBeginThread(func1, LPVOID(456), 0, 0, 0, NULL);//创建工作线程
CWnd* pWnd = pp->GetMainWnd();//获得线程所在的主窗口指针
CWnd* pWnd1 = pWnd->GetDlgItem(IDC_BUTTON2);//获取按钮的句柄
pWnd1->SetWindowText(_T("线程主窗口"));
}
