在我们制作一个应用软件的时候往往需要在窗口或控件中添加背景图。而图片不仅有BMP格式的,还有JPEG、PNG、TIFF、GIF等其它的格式。那么如何用jpg格式的图片来当背景呢?

这里用到了GDI+,顾名思义,其实GDI+是对GDI的优化,在GDI的甚础上添加了其它的许多功能,其中就包括“多种图像格式的支持”。

下面且看在MFC中是如何用GDI+来显示图片的。

====================================================================================================================

一、首先在“StdAfx.h”头文件中加载静态链接库:

#ifndef ULONG_PTR
#define ULONG_PTR unsigned long*
#include "GdiPlus.h"
using namespace Gdiplus;
#pragma comment(lib, "gdiplus.lib")
#endif

若不用“StdAfx.h”头文件的也可以直接用下面代码即可:

#include "GdiPlus.h"
using namespace Gdiplus;

二、在***App类或***Dlg类中添加成员变量

public:
GdiplusStartupInput m_gdiplusStartupInput;
ULONG_PTR m_gdiplusToken;

三、在InitInstance()函数中开启GDI+

GdiplusStartup(&m_gdiplusToken, &m_gdiplusStartupInput, NULL);

四、在ExitInstance()函数中关闭GDI+

GdiplusShutdown(m_gdiplusToken);

五、根据图片资源的路径来显示图片,比如在一个OnPaint()函数中

Graphics graphics(this->GetDC()->m_hDC);
Image image(L"res\\2013.jpg", FALSE);
graphics.DrawImage(&image,0,0);

最新文章

  1. 库AFNetworking的使用
  2. Lua Coroutine详解
  3. 无法远程到2008R2的解决方法
  4. jsp项目与mysql链接
  5. C++ new(3)
  6. Java正则表达式, 提取双引号中间的部分
  7. MVC5 烂笔头
  8. python 函数基础
  9. 【Linux高频命令专题(16)】less
  10. 通过分析 JDK 源代码研究 TreeMap 红黑树算法实现--转
  11. Linux负载均衡软件LVS之一(概念篇)
  12. 使用xlrd模块从excel文件中导入数据
  13. iOS 远程推送消息解析及逻辑处理
  14. callback理解
  15. [福大软工] Z班 第4次成绩排行榜
  16. docker 6 docker运行的底层原理
  17. mysql 原理~ FTWRDL
  18. vue用npm安装删除模块element-ui mint-ui
  19. XML解析技术简介——(一)
  20. LPC43xx SGPIO Experimentation

热门文章

  1. jQuery停止动画——stop()方法的使用
  2. C入门---位运算
  3. SpringMVC保存数据到mysql乱码问题
  4. Zxing兼容2.3等低版本
  5. C#类和接口、虚方法和抽象方法及值类型和引用类型的区别
  6. sql server convert 日期
  7. c# dotfuscator 混淆后无法使用
  8. [12]APUE:高级 I/O
  9. Linux 下curl模拟Http 的get or post请求
  10. G.Interference Signal---河南省第八届程序设计大赛(dp)