MFC中载入位图及其大小的比例的转换
2011-02-28 16:27
821 查看
一、在对话框picture控件中载入位图资源
先将Picture控件的type属性设为Bitmap;
再添加代码:
HBITMAP m_hBitmap;
CStatic* staticId;
staticId = (CStatic *)GetDlgItem(IDC_IDC_PICTURE);
m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE (IDB_BITMAP));
staticId->SetBitmap(m_hBitmap)
其中IDC_PICTURE是picture控件的ID,IDB_BITMAP是需载入的位图的ID;
二、同样也可在button控件中载入位图资源
注意:mfc中对话框的长度单位并不是像素。在其默认的算法里,依赖于系统字体,水平基本单位相当于系统字体中单个字符的平均宽度,垂直基本单位相当于系统字体中单个字符的平均高度,可以通过GetDialogBaseUnits函数(低16位:宽;高16位:高)得到。
pixelX = (templateunitX * baseunitX) / 4
pixelY = (templateunitY * baseunitY) / 8
在VC6.0中大概的比例为:
控件的宽/像素的宽 = 4/7
控件的高度/像素的高度 = 2/3
在vs2005中大概的比例为:
控件的宽/像素的宽 = 2/3
控件的高度/像素的高度 = 8/13
先将Picture控件的type属性设为Bitmap;
再添加代码:
HBITMAP m_hBitmap;
CStatic* staticId;
staticId = (CStatic *)GetDlgItem(IDC_IDC_PICTURE);
m_hBitmap = ::LoadBitmap(::AfxGetInstanceHandle(),MAKEINTRESOURCE (IDB_BITMAP));
staticId->SetBitmap(m_hBitmap)
其中IDC_PICTURE是picture控件的ID,IDB_BITMAP是需载入的位图的ID;
二、同样也可在button控件中载入位图资源
注意:mfc中对话框的长度单位并不是像素。在其默认的算法里,依赖于系统字体,水平基本单位相当于系统字体中单个字符的平均宽度,垂直基本单位相当于系统字体中单个字符的平均高度,可以通过GetDialogBaseUnits函数(低16位:宽;高16位:高)得到。
pixelX = (templateunitX * baseunitX) / 4
pixelY = (templateunitY * baseunitY) / 8
在VC6.0中大概的比例为:
控件的宽/像素的宽 = 4/7
控件的高度/像素的高度 = 2/3
在vs2005中大概的比例为:
控件的宽/像素的宽 = 2/3
控件的高度/像素的高度 = 8/13
相关文章推荐
- MFC中Picture控件,将位图转换成任意大小再放入控件中
- MFC窗口和控件大小等比例变化
- 获取Picture位置及其大小并显示位图
- [MFC] 控件大小跟随对话框大小比例变化 [大三TJB_708]
- <MFC笔记>位图格式及其存储和读取
- MFC窗口和控件大小等比例缩放
- MFC 的几个常用函数,用来计算文件大小,下载速度,转换时间的
- [MFC] 控件大小跟随对话框大小比例变化 [大三TJB_708]
- MFC 的几个常用函数,用来计算文件大小,下载速度,转换时间的
- MFC窗口和控件大小等比例变化
- MFC 的几个常用函数,用来计算文件大小,下载速度,转换时间的
- [MFC] 控件大小跟随对话框大小比例变化 [转]
- Windows/MFC,C++中的TCHAR体系/char体系/WCHAR体系及其相互转换
- MFC简单数据类型类及其转换
- delphi 实现 图片类型转换 jpg---bmp 及修改位图大小
- 我的第一个MFC小项目(4)之 位图转换(续)
- MFC窗口和控件大小等比例变化
- MFC数字图像处理24位图转8位图 等四种图像色彩转换方式
- MFC位图自适应Picture Control控件大小
- 我的第一个MFC小项目(3)之 位图转换