一、区别
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);

转载于:https://www.cnblogs.com/nanyangzp/p/3935486.html

CWnd与HWND的区别与转换相关推荐

  1. CWnd与HWND的区别与转换 如何获取本窗体对象

    一.区别 HWND是句柄,CWnd是MFC窗体类,CWnd中包含HWND句柄成员对象是m_hWnd. HWND是Windows系统中对所有窗口的一种标识,即窗口句柄.这是一个SDK概念.   CWnd ...

  2. CWnd与HWND的区别与联系(相互转换)完全解析

    区别 首先,从这两个单词的第一个字母即可知道两者之间的差别.熟悉MFC的人都知道在MFC中,类基本上都是以C开头的,这是一种规则约定,目的就是让人一看就知道它是一个类! 因此,CWnd第一个字母C指的 ...

  3. CWnd和HWND的区别

            所有控件类都是CWnd类的派生类,CWnd的所有成员函数在控件类中都可以使用.在MFC中,CWnd类是一个很重要的类,它封装了Windows的窗口句柄HWND.在Windows编程中, ...

  4. CWND和HWND之间的关系和转换 和获取方法

    CWnd与HWND的区别 一.区别 HWND是句柄,CWnd是MFC窗体类,CWnd中包含HWND句柄成员对象是m_hWnd. HWND是Windows系统中对所有窗口的一种标识,即窗口句柄.这是一个 ...

  5. CDC和HDC的区别与转换

    CDC和HDC的区别与转换 一.区别与联系 HDC是句柄:CDC是MFC封装的Windows   设备相关的一个类:CClientDC是CDC的衍生类,产生对应于Windows客户区的对象 HDC是W ...

  6. MFC的CWnd和HWND之间互相转换方法

    句柄是一个32位的数,是在WINDOS中的一个资源标示符,相当于c里面的指针. 窗口类就是CWnd,窗口句柄就是HWND.CWnd和HWND之间互相转换代码如下:     CWnd *pWnd;    ...

  7. HINSTANCE HANDLE HWND 的区别及一般方法

    HINSTANCE是应用程序实例句柄, HWND是窗口对象句柄, HANDLE是任意对象的句柄, CWnd是MFC中的窗口类. MSDN里面对于HINSTANCE的解释是"handle to ...

  8. JQuery对象和JS对象区别与转换|| 事件绑定 入口函数 样式控制

    JQuery对象和JS对象区别与转换   1. JQuery对象在操作时,更加方便.     2. JQuery对象和js对象方法不通用的.     3. 两者相互转换         * jq -- ...

  9. CString与string、char*的区别和转换

    我们在C++的开发中经常会碰到string.char*以及CString,这三种都表示字符串类型,有很多相似又不同的地方,常常让人混淆.下面详细介绍这三者的区别.联系和转换: 各自的区别 char*: ...

最新文章

  1. 综合布线系统入门及应用(二)
  2. access窗体中再制作查询窗体_如何给java窗体添加下拉菜单项,以选择游戏难度为例 - 攻向前端的小白...
  3. python函数做n_简单Python函数的O(N)时间复杂性
  4. (实战项目一)手机App抓包爬虫
  5. Tensorflow2.5安装
  6. Mac Big sur如何设置触控板滚动不带惯性?
  7. mysql 名字分组查询id_MySQL对数据表进行分组查询(GROUP BY)
  8. VLAN、OSPF、GRE或IPSEC配置作业与抓包内容(新手入门)
  9. weka mac安装
  10. Oracle的nls_sort和nlssort()函数排序功能
  11. mysql页面浏览记录表设计
  12. mac 连接android手机调试,mac连接华为手机,无法真机调试。
  13. wow插件补充说明篇
  14. Antigen Detector(新冠试剂盒检测)
  15. Java文字小游戏 The Matrix SalaryMan 1.0v 解读
  16. 算法——回溯与剪枝(Backtracking and pruning)
  17. 数组的趣味应用-鲁智深吃馒头
  18. 如何停止屏幕保护程序?
  19. 《天才基本法》中的P=NP?问题对应算法逻辑
  20. android 分辨率 切图,Android设计图(标注、切图)

热门文章

  1. 前端学习(3066):vue+element今日头条管理-频道筛选
  2. 前端学习(3002):vue+element今日头条管理--创建组件和设置路由
  3. 前端学习(2942):vue的本地注册
  4. [html] 你写一个页面需要多长时间?
  5. [vue] prop验证的type类型有哪几种?
  6. [css] 举例说明时间、频率、角度、弧度、百分度的单位分别是哪些?
  7. 工作342:消除平时环境的console
  8. [css] 如何让表格单元格等宽显示
  9. 前端学习(2226):react之状态
  10. 前端学习(1889)vue之电商管理系统电商系统之绘制用户列表组件的基本布局