一.创建项目
文件-新建项目-MFC应用程序-该页面使用“基于对话框”-完成即可。

注意:取消“使用Unicode库”,否则在使用AfxMessageBox会报错,没有一个可以转换的参数类型,要加AfxMessageBox(_T(“..”))。
运行结果:

二.添加背景Bitmap资源
在“资源视图”中右键鼠标Dialog处,选择“添加资源”。

在“添加资源”对话框中选择Bitmap,点击“导入”,选择工程文件res文件夹中的背景图片,它会添加一张IDB_BITMAP1的图片。

注意:在添加的图片中最好使用的是24位的BMP格式图片,图片应该放入res文件夹中。

三.编写代码
找到XXXDlg.cpp文件夹下的void CXXXDlg::OnPaint()函数,在else中进行修改。
1.首先注释掉CDialog::OnPaint()函数
CDialog是个对话框类,OnPaint()是成员函数,是对窗口进行重画,注释掉该语句否则会调用该语句不断重画,而不会执行下面添加的代码。注释掉该语句后最小化对话框后发现控件不可见,不过移动鼠标后又能看见。
2.添加代码
else {
//注释该语句:防止重复调用重画函数
//CDialog::OnPaint(); 
//添加代码对话框背景贴图
CPaintDC   dc(this);  
CRect   rect;  
GetClientRect(&rect);    //获取对话框长宽      
CDC   dcBmp;             //定义并创建一个内存设备环境
dcBmp.CreateCompatibleDC(&dc);             //创建兼容性DC
CBitmap   bmpBackground;   
bmpBackground.LoadBitmap(IDB_BITMAP1);    //载入资源中图片
BITMAP   m_bitmap;                         //图片变量               
bmpBackground.GetBitmap(&m_bitmap);       //将图片载入位图中
//将位图选入临时内存设备环境
CBitmap  *pbmpOld=dcBmp.SelectObject(&bmpBackground);
//调用函数显示图片StretchBlt显示形状可变
dc.StretchBlt(0,0,rect.Width(),rect.Height(),&dcBmp,0,0,m_bitmap.bmWidth,m_bitmap.bmHeight,SRCCOPY);    
}

四.运行结果
运行结果如下图所示:

由于我是刚学习VS2012编写MFC程序,在处理显示图片中遇到了很多问题,也参考了很多很多CSDN大神的博客,希望这篇博客能帮助大家。~~初学者学习,高手忽略。
其中主要感谢y30369的CSDN一篇使用VC++ MFC的博客,详细网址如下:
 http://blog.csdn.net/y30369/article/details/6467468

如何给MFC对话框添加背景图片相关推荐

  1. c语言mfc怎么插入背景图片,MFC 对话框添加背景图片详细过程(两种方法)

    给对话框添加背景图片方法很多,在此贴出两种很常见的方法.一种是通过读取位图资源显示位图(BitMap) step: 1.创建内存设备上下文: 2.选择位图,将其装入内存设备上下文: 3.使用BitBl ...

  2. MFC 对话框添加背景图片详细过程(两种方法)

    给对话框添加背景图片方法很多,在此贴出两种很常见的方法.一种是通过读取位图资源显示位图(BitMap) step: 1.创建内存设备上下文: 2.选择位图,将其装入内存设备上下文: 3.使用BitBl ...

  3. 在VS2013环境下MFC学习:给对话框添加背景图片

    步骤1 添加资源 先右击工程名.rc(我的是PlaneDiag_Demo_MFC),再点击"添加资源" 步骤2 导入BMP图像 进入"添加资源"界面后,点击资源 ...

  4. VC中为对话框添加背景图片

    From: http://blog.ezcn8.com/2011/06/11/vc%E4%B8%AD%E4%B8%BA%E5%AF%B9%E8%AF%9D%E6%A1%86%E6%B7%BB%E5%8 ...

  5. 给对话框添加背景图片

      给对话框添加背景图片   1 . 把你的图包含到程序的 "Bitmap 资源 " 里,提示说该资源使用了大于 256 色的调色板,在 VC 里无法编辑等等,点确定就可以  2 ...

  6. 如何给对话框添加背景图片及图片按钮CBUttonST

    一.首先1.添加背景图片到"Bitmap"资源里.方法为"插入--资源",如果还没有Bitmap,则新建一个Bitmap,否则选择资源       类型为&qu ...

  7. MFC如何添加背景图片

    1.选择一张图片,把图片转换成bmp格式,并把它存放在res文件夹下 2.在资源视图里,选择项目点击右键,添加资源 3.选择bitmap,点击导入 导入成功: 4.在资源视图里右键,获取图片的ID:I ...

  8. MFC 对话框添加背景图

    // 给对话框添加背景图 BOOL CEditCtrlMultilineDlg::OnEraseBkgnd(CDC* pDC) {// TODO: 在此添加消息处理程序代码和/或调用默认值CDC Me ...

  9. element-ui的 Dialog 对话框添加背景图片

    el-dialog的默认背景为 白色 ,我们将其设置为透明.并添加背景图片.el-dialog__header.el-dialog__body.el-dialog__footer背景设置为透明,即可. ...

最新文章

  1. 【python教程入门学习】七夕情人节表白|Python程序员的花式表白
  2. 一位数据挖掘成功人士给数据挖掘在读研究生的建议
  3. @RequestBody注解失效?从前端传来的数据到底需不需要@RequestBody注解?前端传输数据解析的问题?
  4. AI 事件驱动场景 Serverless 实践
  5. poj 3920(简单dp)
  6. 基恩士上位机链路通讯_基恩士PLC通讯源码
  7. 全栈工程师薪水_2020 Java 全栈工程师进阶路线图,不可错过
  8. 一篇文章,带你见证编程语言的诞生!
  9. linux vi 打开乱码,liunx 中使用vim 打开 txt文件时 中文出现乱码的解决办法
  10. c语言输出3位数逆序数,C语言求助!一个三位数的逆序数,总是编不对
  11. linux 查看nginx,php-fpm运行用户及用户组
  12. 常见分布的期望方差矩母函数
  13. # 20175333曹雅坤 第八周课程学习总结
  14. JAVA中this的四种用法的详解
  15. 怎么开发qq群自动回复机器人呢?我教你
  16. 不同版本的centos默认的ks.cfg
  17. 初等数学I 自然数 第二节 序数理论基础与自然数的运算
  18. Slicer学习笔记(六十一)slicer下segmentation segment合并
  19. matlab 设置坐标轴位置/方向 y轴反向
  20. java版-五子棋-个人-源码参考

热门文章

  1. 关于虚拟机的十个基本小技巧
  2. CF35C Fire Again
  3. vb标准(一):用户界面的设计
  4. 相位延时、相位延迟、群延时
  5. 视觉能力提升112%!李飞飞团队让AI进入社会,学会了“骗”标注…
  6. HTML 和文字有关的标签(2)
  7. 方法: 跳转App Store更新你应用的URL究竟该怎么写
  8. 对比测评3款BI分析⼯具,还是它最香!
  9. Docker安装配置Redis最全教程
  10. 三维视频融合技术.在公共安全领域中的应用