VC++MFC对话框程序中给对话添加背景图片
VC对话框怎么显示背景图片呢。在MFC中实现背景图片,不像C#应用程序那么简单。今天就和朋友们说说如何在VC界面中设置背景图片 ^_^

工具/原料
- Visual C++ 2010
方法一:用Picture控件
- 1
新建MFC应用程序
- 2
在应用程序中,选择基于对话框,其他保持默认即可
- 3
右击项目,选择添加-资源
- 4
在添加资源对话框中,点击导入,选择要作为背景的图片
jpg格式的图片可以用画图打开另存为bmp格式
(网上说可以直接jpg格式,自行实验未成功)
下方对话框中资源类型选为bitmap
- 5
在工具箱找到Picture控件,托到界面中
- 6
在界面上点击选中Picture控件,然后在属性的Type下拉框中,选择Bitmap
- 7
再在Picture控件的属性的Type下拉框中插入的图片资源
选择好后,图片就可以加载进对话框了
- 8
运行程序,看到背景已经变成你设置的图片啦 #^_^#
END
方法二:重载 OnCtlColor()函数2
- 1
像方法一那样,插入一张图片到资源文件中,ID为 IDB_BITMAP2
- 2
在dlgImageDlg.h中,添加以下代码
dlgImage是项目的名称
- 3
在dlgImageDlg.cpp文件的OnInitDialog()函数中,添加以下代码
- 4
在设计界面中,右击对话框,选择属性。然后在消息中找到 WM_CTLCOLOR,在右侧下拉框中,选择 OnCtlColor,重载OnCtlColor()函数
- 5
在OnCtlColor()函数中,添加如下代码
- 6
运行程序,界面的背景已经变成漂亮的图片啦
END
方法二注意事项3
在方法二中,如果无法将jpg或其他格式的图片插入到Bitmap资源文件夹下,或者图片无法正常显示,可能是程序没有将其他格式的图片当作bmp格式来处理。
如果中间不是 BITMAP 格式,可以改成 BITMAP 格式
END
注意事项
- 把图片作为资源,这样发布程序后,就可以和程序绑在一起,作为绿色软件了
VC++MFC对话框程序中给对话添加背景图片的更多相关文章
- netbeans中给jpanl添加背景图片制定代码的理解——匿名内部类继承父类
此测试是为了仿照在netbeans中给jpanl添加背景图片的制定代码的执行过程 在JpDemo中定义了个Car类的数据类型,但在给其赋值对象时使用了匿名内部类,继承了Car类,是其子类,并重写了父类 ...
- iOS 中 为UIView添加背景图片
创建UIImage的方法有两种: UIImage *image = [UIImageimageNamed:@"image.jpg"];//这种不释放内存,要缓存 NSString ...
- html中给元素添加背景图片或者gif动图
添加背景图片有四种常用的方式,分别是: repeat 完全平铺 repeat-x 横向平铺 repeat-y 纵向平铺 no-repeat 不平铺 使用示例: <!DOC ...
- Qt中为QPushButton添加背景图片
有2种方式,一种是在代码中设置,另外一种是直接在Qt Creator中直接设置,下面是第二种 参考: http://doc.qt.io/qt-4.8/stylesheet-examples.html ...
- 自定义编辑框VC,可加载更改字体,添加背景图片,显示输入提示信息
搞了一天终于弄了个完整的编辑框控件出来了, 哎,,,搞界面开发还是有点复杂的. #pragma once #include "AdvEdit.h" // CBkgEditBox c ...
- 【MFC - 菜单】在对话框程序中添加菜单栏(CMenu)(转)
原文转自 http://lishiqiang1988.blog.163.com/blog/static/41147912201382104631547/ VS2010的MFC对话框程序中添加菜单栏的过 ...
- VC添加背景图片 的一种方法
.如果程序是新建的对话框,要给其添加背景图片的步骤: 1)加入消息函数:afx_msg void OnPaint(); 2)BEGIN_MESSAGE_MAP(QueryDlg, CDialog) O ...
- MFC对话框程序 屏蔽ESC和ENTER键关闭对话框的方法
http://blog.csdn.net/xgx198831/article/details/6713651 MFC对话框程序 屏蔽ESC和ENTER键关闭对话框的方法 或许还有其它更好的办法,但下 ...
- 关于MFC框架程序中CWinApp::OnIdle
很早之前就发现,我写的图形引擎在MFC框架程序中的刷帧率始终在60FPS左右.好在自己的程序对刷帧率的要求不是很高,所以一直没有太过纠结此事.直到今天看了别人的程序才发现应该在函数CWinApp::O ...
随机推荐
- iframe.contentWindow 属性:关于contentWindow和contentDocument区分
定义和用法 contentDocument 属性能够以 HTML 对象来返回 iframe 中的文档,可以通过所有标准的 DOM 方法来处理被返回的对象. 语法:frameObject.content ...
- ES里关于数组的拓展
一.静态方法 在ES6以前,创建数组的方式主要有两种,一种是调用Array构造函数,另一种是用数组字面量语法,这两种方法均需列举数组中的元素,功能非常受限.如果想将一个类数组对象(具有数值型索引和le ...
- Exception thrown in catch and finally clause
Based on reading your answer and seeing how you likely came up with it, I believe you think an " ...
- iOS---sha1加密的一个坑
OC语言写的sha1加密算法,在网上随手能够搜索到(例如以下便是),可是我不得不说有一些人不责任,没有提醒大家导入必要的系统头文件.从而导致错误 + (NSString *) sha1:(NSStri ...
- 在vs2010中编译log4cxx-0.10.0具体方法(从下载、编译、解决错误具体介绍)
一. 简单介绍 log4cxx是Java社区著名的log4j的c++移植版.用于为C++程序提供日志功能,以便开发人员对目标程序进行调试和审计,log4cxx是apache软件基金会的开源项目,基于A ...
- django book学习问题记录
—————————————————————————————————— 位置:第五章<模型> 问题描述(已解决): >>> p1 = Publisher.objects.c ...
- JavaScript类数组转换为数组 面试题
1.JavaScript类数组转换为数组 (1)方法一:借用slice (2)方法二:Array.from 2.代码 <!DOCTYPE html> <html lang=" ...
- linux 命令笔记: iptables
配置虚拟机网卡 NAT 联网: iptables -t nat -A POSTROUTING -s 192.168.0.0/16 -j MASQUERADE iptables -A FROWARD - ...
- CentOS6.8 安装FTP及添加用户
一 安装FTP 1 检测是否已经安装FTP rpm -qa | grep vsftpd 2 若没有,则进行安装 yum install vsftpd 二 设置vsftpd开机启动 chkconfig ...
- Burp Suite安装&环境配置&启动&浏览器设置代理
一.简述 Burp Suite是一款使用Java编写的,用于Web安全审计与扫描套件.它集成了诸多实用的小工具以完成http请求的转发/修改/扫描等,同时这些小工具之间还可以 互相协作,在BurpSu ...