1.构造一个Image对象
Image* imgBK = Image::FromFile(L"124.bmp");
Graphics *pGDIBmp = Graphics::FromImage(imgBK);//该GDI对象用于绘图
pGDIBmp->DrawImage(img,0,0);//将img图片输出到imgBK图片上
2.一次性绘图到imgBK上,之后再将imgBK显示出来
Graphics gdi(this->GetDC()->m_hDC);
gdi.DrawImage(imgBK,0,0);//绘制背景图片
注:
用Invalidate()重绘图片,为了减少图片闪烁频率,需要响应WM_ERASEBKGND消息
BOOL CtestDlg::OnEraseBkgnd(CDC* pDC)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
return TRUE;
//return CDialogEx::OnEraseBkgnd(pDC);
}
GDI+ - 图形编程【双缓冲】
最新推荐文章于 2020-09-30 12:00:31 发布