为什么在客户区绘图不显示,求大神解决。
MFC多文档程序为什么绘图不显示,双缓冲真的不明白,第一次绘图就被拦在了门外。void CShowDrawView::OnDraw(CDC* pDC)
{
CShowDrawDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here
int y=(GetDocument()->bY);//高
int x=(GetDocument()->bX);//宽
CDC MemDC;
CBitmap MemBitmap;
MemDC.CreateCompatibleDC(pDC);
MemBitmap.CreateCompatibleBitmap(pDC,x,y);
CBitmap *pOldBit=MemDC.SelectObject(&MemBitmap);
MemDC.FillSolidRect(0,0,x,y,RGB(255,255,0));//此处没有绘图????????
while(y>0)
{
while (x>0)
{
MemDC.SetPixel(x,y,RGB(255,0,255));
/*这里绘图同样没有响应,改成pDC调用打开同一个图片两次还能闪烁的显示到屏幕,
郁闷到蛋疼。MFC真的太强大,初学真的容易被挡在门外,实在无法明白*/
x--;
}
y--;
}
pDC->BitBlt(0,0,x,y,&MemDC,0,0,SRCCOPY); //是不是内存MemDC里没有绘图,还是pDC绘的图形被覆盖了,求解?
MemBitmap.DeleteObject();
MemDC.DeleteDC();
}