MFC 画图 老是闪烁 求高手指点

2025-03-18 21:48:33
推荐回答(2个)
回答1:

你把memdc那段移植到OnPaint中,然后将memdc传给DrawMap, 之后在OnPaint中bitblt到窗口DC

CBitmap MemBitmap;
MemDC.CreateCompatibleDC(pDC);
MemBitmap.CreateCompatibleBitmap(pDC,rect.Width(), rect.Height());
DrawMap(&MemDC...
...

pDC->BitBlt(

最后pDC->ReleaseDC

回答2:

调了两次DrawMap? 为什么不一次性在内存DC上画完再输出, 这样可以减少闪烁.