在MFC裡使用GDI

2021-06-25 11:03:19 字數 846 閱讀 5773

1. 在"stdafx.h"裡加入以下:

#include

using namespace gdiplus;

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

2. 為

ulong_ptr m_gdiplustoken;

gdiplusstartupinput m_gdiplusstartupinput;

3. 在該派生類的

initinstance()函式中加入

gdiplusstartup(&m_gdiplustoken, &m_gdiplusstartupinput, null);

4. 在該派生類的

exitinstance()函式中加入

gdiplusshutdown(m_gdiplustoken);

5. 到此,基本上已經可以用了,例如:

graphics g(this->getsafehwnd(),true);

pen mypen(color::red,50);

mypen.setwidth(20);

g.drawline(&mypen,50, 50, 145, 365);

6. 但是,假如你用以下**卻不能編譯通過:

graphics g(this->getsafehwnd(),true);

pen* mypen = new pen(color::red,50);

g.drawline(mypen,50, 50, 145, 365); 提示

error c2660: 「gdiplus::gdiplusbase::operator new」 : 函式不接受 3 個引數

的錯誤。

在VC中使用GDI

gdi 可應用於二維向量圖象,柵格圖象及排版,是為c c 程式設計師而設計的表現為c 類而存在的介面,能用於一切基於windows的應用中。作為gdi的後繼者,gdi 在gdi中增加了新功能,如文字的反鋸齒,漸變筆刷,alpha溶合 也優化了gdi許多已有的功能。此外,gdi 改變了程式設計模式,使...

MFC學習之GDI 一

裝置描述錶即裝置環境的屬性的集合 系統為每個視窗建立了乙個painstructure結構 typerdef struct tagpainstruct painstruct 獲取裝置環境的方法 1.呼叫beginpaint函式 hdc beginpaint hwnd,ps ps為paintstruct...

MFC雙緩衝技術(Gdi )

1.建立乙個乙個最簡視窗 見前文 2.在stdafx.h中新增對gdi 的支援 include pragma comment lib,gdiplus.lib using namespace gdiplus ulong ptr m tokengdiplus gdiplus gdiplusstartup...