CWnd与HWND的区别与转换
转换 区别
2023-09-14 09:02:20 时间
一、区别
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);
收藏于CSDN 2014-02-02
相关文章
- C# ffmpeg 视频处理格式转换具体案例
- Spring MVC数据转换
- C# 读取 timestamp 时间戳 值为byte[] 类型时转换为时间戳字符串
- 无法将类型“System.Collections.Generic.IEnumerable<EmailSystem.Model.TemplateInfo>”隐式转换为“System.Collections.Generic.List<EmailSystem.Model.TemplateInf
- length、length()、size()区别 List与String相互转换
- 时间转换toLocaleDateString()有坑
- 宽字符wchar_t和窄字符char区别和相互转换
- 集合的toArray方法产生的Object[]数组转换失败
- 【类型转换】 隐式转换 自动提升 强制转换
- ImageMagick 转换图片格式
- Python - Python2与Python3的区别、转换与兼容
- [工具类]视频音频格式转换
- c# 后端与前端时间戳的转换
- (String)强制转换、toString()和String.valueOf()的区别
- VC句柄和指针之间的转换
- CV:Image.open 和cv2.imread的简介、区别及PIL.Image格式/OpenCV格式相互转换代码实现之详细攻略
- java 字符串 大小写转换 、去掉首末端空格 、根据索引切割字符 、判断是否含有某连续字符串
- qt实现图片格式转换
- pyspark.sql.DataFrame与pandas.DataFrame之间的相互转换
- hibernate中的java对象有几种状态,其相互关系如何(区别和相互转换)。
- (4)YOLOV5算法二之数据集转换及自动划分、随机划分训练集与测试集