使用GDI+支持PNG显示

长话短说,先上代码:

#include
#pragma comment(lib, "gdiplus")
using namespace Gdiplus;

class mygdiplus
{
 GdiplusStartupInput gdiplusStartupInput;
 ULONG_PTR   gdiplusToken;
public:
 mygdiplus()
 {
  GdiplusStartup(&gdiplusToken, &gdiplusStartupInput, NULL);
 }
 ~mygdiplus()
 {
  GdiplusShutdown(gdiplusToken);
 }
};
mygdiplus mygdiplus;

上面是初始化,定义了一个全局对象mygdiplus,接着

case WM_PAINT:

{

  hdc = BeginPaint(hWnd, &ps);

  Image image(L"ui.png");
  Graphics graphics(hdc);
  graphics.DrawImage(&image, 0, 0);

  EndPaint(hWnd, &ps);
}

break;

这样就把ui.png在主窗体上画了出来。gdi+支持相对文件路径,即你可以输入L"..\\ui.png"来指定应用程序的上一级目录里的图片。

你可能感兴趣的:(gdi+,image,null)