双缓冲绘图问题
大神们,请帮下小弟
void CSleepDlg::OnPaint()
{
CPaintDC dc(this);
CRect rect;
CDC memDC;
CBitmap MemBitmap,*pOldBmp;
GetClientRect(&rect); //获取客户端区域大小
memDC.CreateCompatibleDC(&dc);//建立与屏幕显示兼容的内存显示设备
MemBitmap.CreateCompatibleBitmap(&dc,rect.Width(),rect.Height());
pOldBmp = memDC.SelectObject(&MemBitmap);
OnDraw(&memDC) ;
OnDraw3Btn(&memDC);
OnDrawBlank(&memDC);
dc.BitBlt(rect.left,rect.top,rect.Width(),rect.Height(),&memDC,0,0,SRCCOPY);
memDC.SelectObject(pOldBmp);
MemBitmap.DeleteObject();
}
用CPaintDC dc(this);无法双缓冲,还是闪啊,大神们有碰到这种情况没