想在线程里获取对话框上编辑框中的内容,我知道首先要获取主窗口的句柄,然后再获取控件的句柄。但百度了好久好久,都没有得到解决。
直到看到下面这篇博客,才解决了我的问题。
http://hi.baidu.com/magic_james/item/1298e9c486a7f26bf7c95d89
实现办法如下:
CString str;
CWnd* h_d = AfxGetApp()->GetMainWnd(); //获取主窗口的句柄
h_d->GetDlgItem(IDC_APOETRY_EDIT)->GetWindowText(str); //IDC_APOETRY_EDIT为编辑框的ID
记住:AfxGetApp()->GetMainWnd()取得的是主窗口句柄,无论在哪个线程里调用都是没有问题的,因为它先取得主线程句柄,再取得主线程的活动窗口。