一、Handle句柄和CWnd的区别:
HWND是句柄,CWnd是MFC窗体类,CWnd中包含HWND句柄成员对象是m_hWnd.
HWND是Windows系统中对所有窗口的一种标识,即窗口句柄。这是一个SDK概念。
CWnd是MFC类库中所有窗口类的基类。微软在MFC中将所有窗口的通用操作都封装到了这个类中,如:ShowWindow等等,同时它也封装了窗口句柄即m_hWnd成员。

二、如何得到窗口对象指针CWnd * pCWnd
1、在窗体里,直接用 this->,//this就是本窗体的窗口对象指针
2、主窗体的类对象指针:AfxGetApp()->m_pMainWnd->, //AfxGetApp()->m_pMainWnd就是主窗体的窗口对象指针
3、pCWnd=GetDlgItem(ID_EDIT_NAME);//GetDlgItem 函数可以得到某个控件的窗口对象指针

三、如何得到窗口句柄 HWND Handle
1,Handle=this->m_hWnd
2,GetDlgItem(ID_EDIT_NAME);
3,Handle=::GetDlgItem(this,IDC_STATIC_MODE); //得到本窗体内某个控件的句柄

四、转换
CWnd * pCWnd;
HWND Handle;
pCWnd=FromHandle(Handle);
Handle=GetSafeHwnd(pCWnd);

五、得到窗口的句柄
1、主窗口句柄:
AfxGetMainWnd() //返回主窗口的CWnd指针
AfxGetMainWnd() ->m_hWnd //返回主窗口的句柄
AfxGetApp()->GetMainWnd()->m_hWnd //返回主窗口的句柄

2、当前窗口句柄:
GetForegroundWindow() //返回当前窗口的句柄

3、当前活动窗口句柄:
GetActiveWindow()

4、指定窗口名的句柄
AfxGetMainWnd()->SetWindowText(“我的程序”);
CWnd *hwnd = FindWindow(NULL, “我的程序”);

5、获取父窗口句柄
CWnd* GetParent( ) const;
this->GetParent()->SendMessage(WM_CLOSE); //向当前控件的父窗口发送消息

注:每个窗口类的CWnd *hwnd指针中封装了该窗口的句柄m_hWnd,直接hwnd->m_hWnd即可得到该窗口的句柄

MFC中窗口类、句柄的获取相关推荐

  1. MFC中CImage类显示的半透明PNG存在的问题以及处理方法

    在MFC中自己也做过很多关于如何实现图片半透明的方法,包括抠图,图像数据计算等,但是使用MFC中CImage的时候有时候是透明的,有时候透明部分为白色!让人难以置信,最后在不经意间发现了这边文章才恍然 ...

  2. MFC中窗口实现拖拽文件功能

    MFC窗口拖拽文件功能指的是用鼠标将文件拖拽入窗口后,在窗口中可以获取拖拽文件的绝对路径,如图1所示. 图1 文件拖拽功能 实现窗口的拖拽文件功能,首先要将窗口注册为放置拖拽文件的目标,之后在窗口中响 ...

  3. MFC中CArray类原理及其应用

    1.CArray类应用 函数简介 CArray::GetSize int GetSize( ) const; 取得当前数组元素个数. CArray::GetUpperBound int GetUppe ...

  4. MFC中CDC类详解

    CDC CObject  └CDC CDC类定义的是设备上下文对象的类. CDC对象提供处理显示器或打印机等设备上下文的成员函数,以及处理与窗口客户区对应的显示上下文的成员. 通过CDC对象的成员函数 ...

  5. 关于MFC中View类中GetDocument的出错解决方案

    error C2143: syntax error : missing ';' before '*'  error C2501: 'CTest1Doc' : missing storage-class ...

  6. 转:MFC中常用类,宏,函数介绍

    常用类 CRect:用来表示矩形的类,拥有四个成员变量:top left bottom right.分别表是左上角和右下角的坐标.可以通过以下的方法构造: CRect( int l, int t, i ...

  7. MFC中CString类字符串与长整型、浮点型、字符数组char数据之间的相互转换

    一.长整型数据与CString类字符串相互转换 1.将长整型数据转换为CString字符串类 CString str; long ld; str.Format(_T("%ld"), ...

  8. java 窗口鼠标句柄_c#获取窗体句柄模拟鼠标点击

    [实例简介] c#获取窗体句柄模拟鼠标点击实例2012年8月20日23:48:21,代码清楚,有详细注释,希望对大家有用 [实例截图] [核心代码] 获取窗体句柄模拟鼠标点击 └── 获取窗体句柄模拟 ...

  9. MFC中新建类在classview中没有显示问题

    方法一:删除.ncb文件,关闭VC再重启 方法二:把工程目录下的Debug和Release文件夹删除,再删除.dsw .ncb .aps .plg .opt positions .clw这些无用文件 ...

  10. MFC中CString类字符串用法小结

    一. 赋值运算   二. 比较运算 注意:如果s1小于s2;则z等于-1:如果s1大于s2;则z等于1:如果s1等于s2;则z等于0: 三. 删除函数 四. 插入函数 五. 计算字符总个数函数 更加详 ...

最新文章

  1. scala常用spark的pom.xml与读取csv为rdd到最终join操作
  2. SAP CRM 查询单据的时候 BAdI 里面的排序字段为何有些不生效
  3. 人工智能AI实战100讲(二十)-先拍照后对焦,基于深度估计的景深编辑与背景虚化
  4. 大数据新手之路四:联合使用Flume和Kafka
  5. [Ramda] Complement: Logic opposite function
  6. Java 下的函数对象
  7. Facebook开源新的压缩算法,性能超zlib
  8. GUI开发之AWT、SWING、SWT和JFACE的比较
  9. 尔雅大学计算机基础知识点,超星尔雅_大学计算机基础_章节测试答案
  10. 使用axure rp8 制作一个iphonex手机框架
  11. 一套简单的基本生活财富自由方案
  12. 10、PIC系列-输出比较-PWM脉宽调制模式
  13. 自然辩证法2018版_自然辩证法-2018版课后思考题答案
  14. 程序员代码面试指南刷题--第四章.打气球的最大分数
  15. form表单内子元素组件按钮button事件冲突 - Vue
  16. (VQA)LRTA: A Transparent Neural-Symbolic Reasoning Framework with Modular Supervision for Visual Que
  17. TreeGrid(树形表格)
  18. 利用百度云API接口上传照片进行植物识别
  19. 3--表格table 个人简历
  20. SEO零基础入门教程(外链的发布和软文编写)

热门文章

  1. 记录一次linux信号量sem_t使用bug
  2. SNMP简单网络管理协议及开发测试工具
  3. 目标检测---数据集格式转化及训练集和验证集划分
  4. 【回眸】LDA算法(数据处理与智能决策)
  5. 基于模糊集的图像增强
  6. Java房地产销售管理系统_Java学员作品-房地产销售管理系统
  7. java库房仓库管理系统_Java学员作品-仓库管理系统
  8. 20210219 plecs为不同的PWM 配置不同的死区时间
  9. 【JAVA】tomcat 支持excel07下载
  10. 相片审核处理工具步骤_相片