MFC开发IM-第二篇、MFC picture 控件的用法
一、利用Picture控件静态加载显示Bitmap图片
- 在界面上创建Picture控件
- 将Picture控件的Type属性设为Bitmap
- 导入或新建Bitmap类型资源,ID为IDB_BITMAP1等等
- 为控件添加变量CStatic m_pic;
加载图片代码:
HBITMAP hBitmap = ::LoadBitmap(AfxGetInstanceHandle(),
MAKEINTRESOURCE(IDB_BITMAP1));
m_pic.SetBitmap(hBitmap);
- 1
- 2
- 3
分析:
优点:代码非常简洁
缺点:
1、加载的Bitmap不可调整大小,取实际大小值,Picture控件会自动调整为Bitmap的实际大小值。
2、加载的Bitmap资源只能在模块内部
二、利用Picture控件动态加载显示Bitmap图片
HBITMAP hBitmap = (HBITMAP)::LoadImage(AfxGetInstanceHandle(),TEXT("D:\\test.bmp"), IMAGE_BITMAP, 50, 50, LR_DEFAULTCOLOR | LR_LOADFROMFILE | LR_CREATEDIBSECTION);
m_pic.SetBitmap(hBitmap);
- 1
- 2
- 3
- 4
分析:
- 加载的图片在模块外
- 可以指定图片大小,如上图中的50,50,若实际大小和此不相符,会自动缩放图片
- LR_DEFAULTCOLOR — 指定按照原图的颜色加载图片,不可少
LR_LOADFROMFILE — 加载外部的Bitmap,一定要指定
LR_CREATEDIBSECTION — 一般会指定 - 如若按照图片本身的大小加载,则设置cx,cy为0,0,并且在最后的标志位加上|LR_DEFAULTSIZE
注意:从网上下载的Bitmap图片可能用上面的方法加载失败,返回的HBITMAP为NULL,GetLastError()返回0,这个一般是图片格式的问题,可以用Windows的画图程序打开Bitmap再另存为24位位图的bmp格式就可以了。
MFC开发IM-第二篇、MFC picture 控件的用法相关推荐
- vs中c语言图形显示出来,VS2010+Opencv+MFC读取图像和视频显示在Picture控件
VS2010+Opencv+MFC读取图像和视频显示在Picture控件,供大家参考,具体内容如下 1.新建MFC对话框应用程序. 其余选项默认,单击完成,创建出对话框应用程序.删掉原来自带的一些控件 ...
- MFC对话框显示图片(使用Picture控件)
//************************************************************************************************** ...
- vc picture控件载入背景图,随控件大小改变
在mfc里,想要在Picture控件中载入一张图片有两种方法:静态的和动态的.静态的方法就是图片先载入资源(.rc)文件中,拥有一个唯一的ID:动态的方法就是制定图片的路径名即可. 当然这样的方法网上 ...
- MFC开发IM-第六篇、MFC 文本框 用法
MFC里面的EDIT Control控件的用法是怎么样的,1.怎么样才能赋值给EDIT Control控件并在EDIT Control控件显示出来;2.怎么取得EDIT Control控件的值并传递给 ...
- mfc调取摄像头显示并截图_用OpenCV在MFC Dialog中Picture控件上显示摄像头采集实时视频...
OpenCV之所以能在MFC Dialog的Picture控件上绘图,全靠了CvvImage::DrawToHDC()方法.这就是下文为出现CvvImage和HDC的原因.下面是具体过程,用OpenC ...
- MFC中picture控件如何响应鼠标移动?
MFC中picture控件如何响应鼠标移动? 2011-08-21 21:23 轻若惊鸿 | 浏览 3354 次 硬件网络 我将一个picture控件的属性中的Notify勾上了,但是只能响应鼠标按键 ...
- MFC/VC++中怎样将一个位图添加到数据库中并且将其读出来到指定的Picture控件上
看这篇文章之前建议先看一下下面这篇文章: VC下显示位图的几种方法 http://blog.chinaunix.net/uid-607545-id-2088102.html或 http://bl ...
- 我的YUV播放器MFC小笔记:设置picture控件背景为黑色、窗口缩放
图像的显示主要使用picture控件,一般播放器,在初始化时,播放画面的区域背景都是黑色的,在YUV播放器,也如此.但在网上找了很久的资料才实现该功能,其实说白了,代码很简单,在OnPaint函数中将 ...
- MFC 配置OpenCV在Picture控件上绘图
首先下载C++的OpenCV,这里给个百度网盘链接: 链接:https://pan.baidu.com/s/1Hltk8-eVo0lY9rj3IgIAPw 提取码:m52c 解压,放在合适位置即可. ...
最新文章
- it行业php,什么是IT行业
- 深度学习模型参数量/计算量和推理速度计算
- loadrunner使用流程_LoadRunner关联函数
- 前端实习生笔试_一道来自美图的实习生前端笔试算法题
- 浅析:精密空调能耗超高的原因!
- hive 0.11 mysql_Hive的升级(0.8.0到0.11.0)
- gradient boosted regression tree
- php 内容转换dom,php – 防止DOMDocument :: loadHTML()转换实体
- 蓝桥杯java a组_蓝桥杯十一届JavaA组-C++解题
- asp.net core 自定义基于 HttpContext 的 Serilog Enricher
- linux dd 重装系统,发现用dd装系统真是简单快捷通用
- 使用Python进行汽车黑客攻击:泄露GPS和OBDIICAN总线数据
- Linux 能否拿下苹果 M1 阵地?
- composer 的快速安装
- office 在线编辑 java_JAVA调用PageOffice在线打开、编辑Word文档
- oracle分析函数技术详解(配上开窗函数over())
- 圆周率π的近似计算(三)-MapReduce分布式计算入门
- qq群发 java_qq聊天机器人 群发工具 (java版) (三)
- Linux命令:md5sum
- Cesium orientation 和 设置初始角度