MFC入门(三)-- MFC图片/文字控件(循环显示文字和图片的小程序)
惯例附上前几个博客的链接:
MFC入门(一)简单配置:http://blog.csdn.net/zmdsjtu/article/details/52311107
MFC入门(二)读取输入字符:http://blog.csdn.net/zmdsjtu/article/details/52315088
/正文///
首先新建一个MFC项目,习惯性选择静态库
右击MFC_Picture.rc选择添加资源,把需要添加显示的BMP图片文件添加到资源,本文为了滚动显示两张图片,所以只用了两张BMP,当然你也可以三张四张无数张,在待会提及的代码部分进行修改即可。
会默认生成两个BITMAP,名字就用的默认的BITMAP1和BITMAP2,在代码部分可以对应看下。
选择Bitmap导入,在对应目录下选择所有文件,选择两张bmp文件导入即可。
现在我们就有了两张可以用的Bitmap了。
接着我们搭建界面如下:
图里没见过的那个小仙人掌的图标就是我们今天要用的图片Bitmap控件,选择左侧工具栏里的Picture Control拖动到右侧,再在属性里把Type改成本文要用的Bitmap,并讲名字重命名为IDC_show(因为默认的是Static在添加显示图片变量时会出问题,所以这里必须要改!!)
继而右击小仙人掌添加变量m_show用以一会儿动态显示图片~
//图里的m_show是黑的是因为之前已经添加了,不必在意,打上去就好
然后就是关键性的代码阶段了,双击下一张的按钮空降到指定代码位置,复制代码如下:
int i = 0; //变量i用来切换图片以及文字
void CMFC_PictureDlg::OnBnClickedOk()
{
CString txt_show;
CBitmap bitmap; // CBitmap对象,用于加载位图
HBITMAP hBmp; // 保存CBitmap加载的位图的句柄
if (i == 0) {
bitmap.LoadBitmap(IDB_BITMAP1); // 将位图IDB_BITMAP1加载到bitmap
txt_show.Format(_T("你瞅啥?")); SetDlgItemText(IDC_EDIT1, txt_show);
}
if (i == 1) {
bitmap.LoadBitmap(IDB_BITMAP2);
txt_show.Format(_T("再瞅试试?")); SetDlgItemText(IDC_EDIT1, txt_show);
}
i++;
if (i == 2) i = 0;
hBmp = (HBITMAP)bitmap.GetSafeHandle(); // 获取bitmap加载位图的句柄
m_show.SetBitmap(hBmp); // 设置图片控件m_jzmPicture的位图图片为IDB_BITMAP1
}
下面阐述下最为关键的两个模块:
第一个是显示BMP文件的部分:
bitmap.LoadBitmap(IDB_BITMAP1); 将图片载入之后
hBmp = (HBITMAP)bitmap.GetSafeHandle(); 获取bitmap加载位图的句柄
m_show.SetBitmap(hBmp); 最后显示图片到之前新建的图片控件的变量上
第二块是文字显示的模块:
新建CString txt_show;
txt_show.Format(_T("你瞅啥?")); 给txt_show赋值
SetDlgItemText(IDC_EDIT1, txt_show);显示在ID为IDC_EDIT1的文字控件上
最后是结果展示~~~ //并不精神污染
最后祝大家编程愉快~~
MFC入门(三)-- MFC图片/文字控件(循环显示文字和图片的小程序)相关推荐
- wpf image控件循环显示图片 以达到动画效果 问题及解决方案
1>最初方案: 用wpf的image控件循环显示图片,达到动画效果,其实就是在后台代码动态改变Image.Source的值,关键代码: for (int i = 1; i < 601; i ...
- android从九宫格全屏预览,仿微信朋友圈展示图片的九宫格图片展示控件,支持点击图片全屏预览大图...
AssNineGridView 仿微信朋友圈展示图片的九宫格图片展示控件,支持点击图片全屏预览大图(可自定义). 写在前面 这是一个九宫格控件,本来是很久之前就写好了,现在才开源出来,也是看了很多优秀 ...
- MFC入门基础(十一)控件编程示例
参考博客:VS2010/MFC编程入门之二十三(常用控件:按钮控件的编程实例)-软件开发-鸡啄米 以下内容主要来自于上述大神博客,稍作修改 1.首先还是新建一个mfc的应用程序(基于对话框的) 2.删 ...
- c# 中ToolStrip控件中button控件,显示文字和图标
1.同时显示文字和图标 DisplayStyle 属性设为 ImageAndText (DisplayStyle属性用来设置图标的显示状态为 图片.文字.图片和文字 ) ImageRela ...
- TreeView控件之,后台构建TreeView(WinForm小程序)
private void Form1_Load(object sender, EventArgs e){//生成DataTableDataTable table = new DataTable();D ...
- VS2019/MFC编程入门教程:组合框控件Combo Box
上一节讲了列表框控件ListBox的使用,本节主要讲解组合框控件Combo Box.组合框同样相当常见,例如,在Windows系统的控制面板上设置语言或位置时,有很多选项,用来进行选择的控件就是组合框 ...
- MFC之图像绘制---高速绘图控件(High-speed Charting Control)应用(一)
High-speed Charting Control的下载.配置及创建 一.介绍 必须吹一波这个大佬,我觉得这个可能是MFC中最好用的绘图控件了,相关下载链接如下: 官方下载地址https://ww ...
- 2022 最新 Android 基础教程,从开发入门到项目实战【b站动脑学院】学习笔记——第三章:简单控件
第 3 章 简单控件 本章介绍了App开发常见的几类简单控件的用法,主要包括:显示文字的文本视图.容纳视图的常用布局.响应点击的按钮控件.显示图片的图像视图等.然后结合本章所学的知识,演示了一个实战项 ...
- VC用MFC开发的圆形进度条控件
DownLoad Src VC用MFC开发的圆形进度条控件 visualsan@yahoo.cn NUAA zss 在NBA2007游戏里,还有很多科幻电影里,经常可以看到圆形进度条.有的用来显示导弹 ...
最新文章
- 2017matlab版本Simulink 学习笔记整理
- VirtualBox Nonexistent host networking interface 错误解决方案
- 北京活动 | 百度首次揭秘如何构建用户画像与移动统计
- ios::sync_with_stdio(false)的作用
- 计算机里的网络是什么意思啊,计算机网络中本地站点是什么意思
- 12.2 新特性:锁信息获取之在线删除索引
- Spring全家桶——SpringCloud之Feign(Finchley版)
- 路由器的修改权限密码、还原出厂设置、备份配置文件和升级操作系统实际操作...
- mysql主从同步故障整理
- css3 水纹效果(仿写阿里云)
- JavaWeb项目的热部署配置
- 惠普HP LaserJet Pro MFP M126nw 打印机驱动
- Verilog语法之generate语句
- Redis 与 Mysql 的数据一致性
- 《计算机网络》笔记摘抄汇总
- Github+Facebook=?这家公司有望让程序猿的头秃得慢一点
- 垂直水平居中的几种方式
- js中如何将字符串转化为时间,并计算时间差
- 基于环信视频语音通话功能
- mac vbox 共享文件夹_Mac系统VirtualBox中CentOS 7.2启用共享文件夹
热门文章
- 【深度学习之美】LSTM长短记,长序依赖可追忆(入门系列之十四)
- python抓取视频真实地址_快手批量获取真实地址python
- 【剑指 Offe】剑指 Offer 11. 旋转数组的最小数字
- 继续:个人微信的自动收款解决(思路)
- 一种更优雅的蓝牙配对技术 - Cross-transport key derivation (CTKD)
- 天下大事,必做于细!
- 全球与中国连续光纤激光器市场现状及未来发展趋势
- Windows 32位下cocos2d-x2.2.0Android环境搭建
- 动环监控系统中B接口的实现
- 如何看计算机加密方式,电脑常见的几种加密的方法