佚名通过本文主要向大家介绍了gdi控件初始化失败,gdi 控件,gdi,gdi是什么意思,gdi window是什么意思等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 用GDI+绘制表面的ActiveX控件,为什么在Word里无法打印?
描述:
描述:
如果我用以下方法绘制ActiveX控件表面,在WORD的插入该控件后在设计模式下(或者打印)显示为空白,只有退出设计模式才能正常显示。
void CCachetCtrl::OnDraw(CDC* pdc, const CRect& rcBounds, const CRect& rcInvalid)
{
if (!pdc) return;
Graphics graphics(pdc->m_hDC);
Bitmap bmp(rcBounds.Width(), rcBounds.Height());
Graphics* pMemoryGraphics = Graphics::FromImage(&bmp);
pMemoryGraphics->Clear(Color(255, 255, 255));
Pen newPen(Color(255,0,0),4);
pMemoryGraphics->DrawEllipse(&newPen,0,0,bmp.GetWidth(),bmp.GetHeight());
graphics.DrawImage(&bmp, rcBounds.left, rcBounds.top);
}
而如果仅仅用MFC生成的默认方法,无论打印还是非设计模式都能正常显示。请问这是为什么啊?