CWnd与HWND的区别与转换

原创 2013年12月02日 14:34:38

CWnd与HWND的区别与转换 

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

相关文章推荐

CWnd与HWND的区别与转换

CWnd与HWND的区别与转换   转载http://blog.sina.com.cn/s/blog_962250db01019or9.html  一、区别  HWND是句柄,CWnd是MFC窗体...

CWnd与HWND的区别与转换

2011-10-20 10:29:30|  分类: VC学习库|举报|字号 订阅        下载LOFTER我的照片书  | 一、区...

VC中的CWnd指针和HWnd的区别于联系

HWND是Windows系统中对所有窗口的一种标识,即窗口句柄。这是一个SDK概念。   CWnd是MFC类库中所有窗口类的基类。微软在MFC中将所有窗口的通用操作都封装到了这个类中,如:Show...
  • mail_cm
  • mail_cm
  • 2012年05月29日 14:16
  • 571

HINSTANCE/HWND/CWnd/HANDLE 的区别

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

CWnd和CDC, hwnd和hdc的区别

虽然Gilbert之前介绍过CWnd和HWnd的区别, 但是这里和其他几个CDC, HDC放在一起重申一下其中的区别和关系. 1.对象和句柄 CWnd是类, HWnd是句柄, ...

VC中的CWnd指针和HWnd的区别于联系

HWND是Windows系统中对所有窗口的一种标识,即窗口句柄。这是一个SDK概念。   CWnd是MFC类库中所有窗口类的基类。微软在MFC中将所有窗口的通用操作都封装到了这个类中,如:ShowWi...

CWnd和HWND的区别

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

CWnd与HWND的区别 (2

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

巩固C语言(六)----数字倒置转换、内存检索、移动窗口、HWND和CWnd、CodeBlocks环境配置

数字倒置转换、内存检索、移动窗口、HWND和CWnd、CodeBlocks环境配置

VC_HWND和CWND的概念以及转换

今天在VC6.0上自己做个测试,验证下HWMD和CWND的概念 自己的理解:下面先说下HWMD的概念,我也不是很理解,应该是SDK接口的概念,并没有实际对象操作的地址空间。 它只是一个32bit的...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:CWnd与HWND的区别与转换
举报原因:
原因补充:

(最多只允许输入30个字)