1.載解壓GDI+開發包;
2.正確設置include & lib 目錄;
設置如下:VC6.0編譯器菜單Tools->Options->Directories中添加inlude files和Library files對應的文件夾(前提是你下載了GDI+的開發包,放到對應的文件夾中)
3.在stdafx.h中添加:
#define ULONG_PTR ULONG #include <gdiplus.h> #pragma comment(lib, "gdiplus.lib") using namespace Gdiplus;
(1)在應用程序項目的應用類中,添加一個成員變量,如下列代碼:
ULONG_PTR m_gdiplusToken;
(2)在應用類中添加ExitInstance的重載,並添加下列代碼用來關閉GDI+:
Gdiplus::GdiplusShutdown(m_gdiplusToken);
ULONG_PTR是一個DWORD數據類型,該成員變量用來保存GDI+被初始化后在應用程序中的GDI+標識,以便能在應用程序退出后,引用該標識來調用Gdiplus::
(3)在應用類的InitInstance函數中添加GDI+的初始化代碼:
注意:下面這些GDI+的初始化代碼必須放在m_pMainWnd->UpdateWindow();之前。
Gdiplus::GdiplusStartupInput gdiplusStartupInput;
Gdiplus::GdiplusStartup(&m_gdiplusToken, &gdiplusStartupInput, NULL);
(4)在需要繪圖的窗口或視圖類中添加GDI+的繪制代碼。
1. 在單文檔應用程序中使用GDI+
以上過程,在單文檔,多文檔或是基於對話框的工程步驟都是一樣的。下面,我們就是以一個單文檔應用程序CBmpRotate作為示例的。下面列出第4步所涉及的代碼:
基於對話框的工程GDIBase
//要在dlg.DoModal();之前
Gdiplus::GdiplusStartupInput gdiplusStartupInput;
Gdiplus::GdiplusStartup(&m_gdiplusToken, &gdiplusStartupInput, NULL);
可以看到lastResult Ok,可以用Gdiplus::Ok來判斷其狀態是否調用成功。
//如何在dlg.DoModal();之后添加如下代碼
Gdiplus::GdiplusStartupInput gdiplusStartupInput;
Gdiplus::GdiplusStartup(&m_gdiplusToken, &gdiplusStartupInput, NULL);
就會出現
出現GdiplusNotInitalized,說明初始化不正確。
當然運行后,什么也沒出現
參考鏈接:http://blog.csdn.net/www66net/article/details/45365545