【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);
相關文章
相關標籤/搜索