MFC中窗口句柄和控件句柄的获取
2016-09-21 16:46
281 查看
1. 程序主窗口句柄的获得
CWnd* p = AfxGetMainWnd();//函数AfxGetMainWnd()获得主对话框的指针p
HWND h = p->m_hWnd;
//主窗口类的成员变量m_hWnd即为主对话框句柄h
例如:::SendMessage(AfxGetMainWnd()->m_hWnd, WM_MY_DOSOME, 0, (LPARAM)i);
2. 控件句柄的获得
HWND EditHwnd = CWnd::GetDlgItem(h,IDC_EDIT1); //函数GetDlgItem()的第一个参数为对话框的句柄,第二个参数为对话框内某控件的ID,返回值为该控件的句柄。
HWND EditHwnd = GetDlgItem(IDC_EDIT1)->m_hWnd;
//函数GetDlgItem()的参数为对话框内控件的ID,返回值为该控件的指针。例如:
CString str(_T("dd"));
::SendMessage(AfxGetMainWnd()->GetDlgItem(IDC_COMBO3)->m_hWnd, WM_SETTEXT , 0 , (LPARAM)str.GetBuffer(0));
3. 在窗口类中
this->m_hWnd 或者 HWND h = this->GetSafeHwnd()
4. 子窗口句柄 ::FindWindow(NULL,WindowsName)
CWnd* pWnd = FindWindow(NULL,_T("清芝--支票机"));
HWND hWnd = pWnd->m_hWnd;
CWnd* p = AfxGetMainWnd();//函数AfxGetMainWnd()获得主对话框的指针p
HWND h = p->m_hWnd;
//主窗口类的成员变量m_hWnd即为主对话框句柄h
例如:::SendMessage(AfxGetMainWnd()->m_hWnd, WM_MY_DOSOME, 0, (LPARAM)i);
2. 控件句柄的获得
HWND EditHwnd = CWnd::GetDlgItem(h,IDC_EDIT1); //函数GetDlgItem()的第一个参数为对话框的句柄,第二个参数为对话框内某控件的ID,返回值为该控件的句柄。
HWND EditHwnd = GetDlgItem(IDC_EDIT1)->m_hWnd;
//函数GetDlgItem()的参数为对话框内控件的ID,返回值为该控件的指针。例如:
CString str(_T("dd"));
::SendMessage(AfxGetMainWnd()->GetDlgItem(IDC_COMBO3)->m_hWnd, WM_SETTEXT , 0 , (LPARAM)str.GetBuffer(0));
3. 在窗口类中
this->m_hWnd 或者 HWND h = this->GetSafeHwnd()
4. 子窗口句柄 ::FindWindow(NULL,WindowsName)
CWnd* pWnd = FindWindow(NULL,_T("清芝--支票机"));
HWND hWnd = pWnd->m_hWnd;
相关文章推荐
- MFC窗口最大化&移动窗口位置&获取控件句柄,设置控件大小
- 在MFC中获取窗口句柄
- 在MFC中获取窗口句柄
- 在MFC中获取窗口\视图句柄 &获取当前活动的CView .
- VB.NET 通过窗口句柄,获取webbrowser控件HTML内容
- [MFC] HWND(获取控件或窗体句柄) [大三TJB_708]
- WIN API-VFP获取第三方窗体的控件信息(句柄,窗口ID,进程ID,类名,标题)
- 在MFC中获取窗口句柄
- MFC中获取窗口句柄及相关函数
- 获取活动窗口输入焦点控件句柄的方法
- 获取任意控件的ID或窗口句柄
- MFC 获取当前活动窗口的句柄
- WIN API-VFP获取第三方窗体的控件信息(句柄,窗口ID,进程ID,类名,标题
- MFC对话框应用程序 如何在对话框窗口显示前获取窗口(控件)的屏幕坐标位置
- 【转】在MFC中获取窗口句柄
- 在MFC中获取窗口\视图句柄 &获取当前活动的CView
- 在MFC中获取窗口句柄
- 在MFC中获取窗口句柄
- MFC框架类、文档类、视图类相互访问(及窗口句柄获取)的方法
- MFC中获取窗口句柄及相关函数