1. 在stdafx.h头文件加入
#include <GdiPlus.h>
#pragma comment(lib, "Gdiplus.lib")
2. 在CMyGDIApp类里声明两个变量
private:
Gdiplus::GdiplusStartupInput gdiplusStartupInput;
ULONG_PTR gdiplusToken;
3. 在BOOL CMyGDIApp::InitInstance()里的m_pMainWnd->ShowWindow(SW_SHOW)之前调用如下语句
Gdiplus::GdiplusStartup(&gdiplusToken, &gdiplusStartupInput, NULL);
MFC基于单文档的GDI+绘图
4. (1)在CMyGDIView::OnDraw(CDC* pDC)里加入以下语句
Gdiplus::Graphics graphics(pDC->GetSafeHdc());
Gdiplus::Image image(L"F://fengjing.jpg");//若路径不对,则无法实现在客户区里绘图
graphics.DrawImage(&image, 10, 10);
MFC基于对话框的GDI+绘图
4. (2)添加响应WM_ERASEBKGND消息,以及响应函数,实现如下
BOOL CMyGDIDlg::OnEraseBkgnd(CDC* pDC)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
Gdiplus::Graphics graphics(pDC->GetSafeHdc());
Gdiplus::Image image(L"F://fengjing.jpg");//若路径不对,则无法实现在客户区里绘图
graphics.DrawImage(&image, 0, 0);
return TRUE;
}
提示: 1. 要配置GDI+环境
2. 加载图片的路径不能在debug文件里
- 1
- 2
- 3
- 4
- 5
- 6
前往页