- 注册时间
- 2021-4-16
- 最后登录
- 2024-7-7
- 在线时间
- 4 小时
编程入门
- 龙马币
- 52
|
mfc小技巧之获取对话框句柄对话框指针
1、CWnd *pWnd = AfxGetMainWnd();
获取主对话框指针;
获取住对话狂句柄
HWND hHwnd = pWnd->m_hWnd;
父窗口法:GetParent();
在类的成员函数
中如果使用与MFC类库相同名的SDK API 则需在函数名前添加::
::作用将作用域改为全局。
2、
每个窗口类都有一m_hWnd的成员变量,对话框也不例外。
要想在程序运行时,给对话框发送一特定消息,可以直接使用:::SendMessage(m_hWnd,WM_COMMAND,ID_RESET,0);
当然,还有一种通杀的方法,使用全局函数FindWindow()
例如,还是给对话框发送一个特定消息,就可以用下面的方法:
- HWND hwnd;
- hwnd = ::FindWindow(NULL, "对话框 "); //把“对话框”换成特定的标题即可
- ::SendMessage(hwnd,WM_COMMAND,ID_RESET,0);
复制代码
还可以让该对话框隐藏:
- ::ShowWindow(hwnd, SW_HIDE);
复制代码
如果只是单纯的给对话框自己发送特定消息,没必要使用全局函数,MFC封装了的,直接使用以下语句即可:
SendMessage(WM_COMMAND,ID_RESET,0);
它会对自动给自己发送的
|
|