加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

MFC 获得窗口句柄

(2014-11-13 15:02:24)
标签:

c

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); 

它会对自动给自己发送的

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有