【C++自绘控件】如何用GDI+来显示图片

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

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

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

====================================================================================================================spa

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

 

#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;

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

 

 

public:
	GdiplusStartupInput m_gdiplusStartupInput; 
	ULONG_PTR m_gdiplusToken;


3、在InitInstance()函数中开启GDI+资源

 

 

GdiplusStartup(&m_gdiplusToken, &m_gdiplusStartupInput, NULL);


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

 

 

GdiplusShutdown(m_gdiplusToken);


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

 

 

Graphics graphics(this->GetDC()->m_hDC); 
Image image(L"res\\2013.jpg", FALSE);
graphics.DrawImage(&image,0,0);
相关文章
相关标签/搜索