VC6使用GDI+ 顺带一些感悟

来源:互联网 发布:js将链接生成二维码 编辑:程序博客网 时间:2024/06/05 10:29

今儿在群里看到有人问GDI+的事,说是用的VC6,不知道怎么用GDI+。看见他就好像看见了一年前的自己。

当时的自己也是,不知道怎么用GDI+,总觉得GDI+好像很难,是很高深的技术,所以就一直不敢去碰,也就一直没去找任何相关的资料,一直苦逼的用着GDI。直到有一天遇到一个问题,要显示png图片,GDI做不了了,找了相关资料,说要用GDI+或者开源库。当时自己的水平完全是个初学者,看到“开源库”3个字,立马就吓趴下了,一想开源库那么多代码,看看都要好长时间,还不一定看得懂,还要编译什么的,想想就麻烦。相比之下至少GDI+还是现成的。于是果断放弃开源库,开始查找GDI+的相关资料,查了以后发现,其实也没有想象的那么难,于是乎慢慢开始研究,也慢慢上手了,学到不少东西,也发现GDI+确实方便。

现在想想,幸好当初接触了GDI+,虽然使用过程中碰到不少问题,但是都一一解决了,也正因为碰到了这些问题,自己学到了很多东西,感觉成长起来了。

由于这次的经历,让自己以后碰到什么没见过的东西,都保持着不畏惧的心里,迎难而上,才能更快进步。

想起一句话:克服恐惧最好的办法就是面对它


下面给出VC6下使用GDI+的方法,简单说就5步:

  1. 下载GDIPlus库
  2. 解压并加入工程文件
  3. 导入lib
  4. 包含头文件
  5. 必要的初始化

就这么简单的5步,就可以在VC6下使用GDI+了。


下载GDIPlus库

网上可以下载GDI+库的地方很多,我这里上传了一份,地址在:
http://download.csdn.net/detail/a102111/4931643

解压并加入工程文件

解压下载到的库文件,将文件夹放入工程文件目录下。

导入lib

导入lib有2种方法,一种是代码导入,我比较喜欢这种,因为直接复制黏贴就可以,很方便:
#pragma comment (lib, "gdiplus.lib")

一般加载stdafx.h文件里,方便移到其他工程里。


另外一种是在工程属性中配置,这里就补说了。


包含头文件

这个也很简单,一般在stdafx.h里面加入:
#ifndef ULONG_PTR#define ULONG_PTR unsigned long *#include "GDIInc/GdiPlus.h"using namespace Gdiplus;#endif


必要的初始化

//定义2个变量GdiplusStartupInput m_gdipInput;ULONG_PTR m_pGdiToken;//GDI+初始化GdiplusStartup(&m_pGdiToken, &m_gdipInput, NULL);//使用GDI+...//解除GDI+GdiplusShutdown(m_pGdiToken);




原创粉丝点击