mfc GDI+ 使用 一

        在 mfc中会经常遇到处理图像 图片 控件添加透明背景图片等,这时候就会用到GDI 或者GDI+ 。由于 客户要求,本人也是被迫头一次用mfc项目,以前都是用vc++做些小的工具及activex ,碰到很多头疼的问题。在这做一个整理,梳理下知识,要是能帮到别人那自然更好。

一、、在vs中 使用gdi+   简单的对话框程序为例

1、创建一简单对话框 

2、在StdAfx.h头文件添加gdi+头文件及库文件  代码如下

#include <comdef.h>//初始化一下com口

#ifndef ULONG_PTR

#define ULONG_PTR unsigned long*

#include "GdiPlus.h"

using namespace Gdiplus;

#endif

#pragma comment(lib,"gdiplus.lib")


3、程序启动  初始化 gdi+   对话框就是在InitInstance函数中添加如下代码

//gdi+用到的两个变量   装载gdi+
GdiplusStartupInput m_gdiplusStartupInput;
ULONG_PTR m_pGdiToken;
GdiplusStartup(&m_pGdiToken,&m_gdiplusStartupInput,NULL);


4、在 程序结束 或者不需要使用的时候记得释放

GdiplusShutdown(m_pGdiToken);


5、这样就可以再你想要使用的地方正常使用了 (加载png图片)

void CTestDlg::OnButton1() 

{

    pDC =GetDC();

    Graphics graphics( pDC->m_hDC);

    Image image(L"walkman.png", FALSE);

    graphics.DrawImage(&image, 10,10);

}

mfc GDI+ 使用 一_第1张图片



你可能感兴趣的:(mfc,vc++,GDI+)