Я использую GDI + в приложении С++/MFC, и я просто не могу избежать мерцания всякий раз, когда изменяется размер окна.
Я уже пробовал следующие шаги:
- возвращается TRUE на
OnEraseBkGnd()
; - возвращает NULL на
OnCtlColor()
; - используется двойная буферизация в соответствии с этим кодом:
void vwView::OnDraw(CDC* pDC)
{
CRect rcClient;
GetClientRect(rcClient);
Bitmap bmp(rcClient.Width(), rcClient.Height());
Graphics graphics(&bmp);
graphics.DrawImage(m_image, rcClient.left, rcClient.top);
Graphics grph(pDC->m_hDC);
grph.DrawImage(&bmp, 0, 0);
}
Я что-то делаю неправильно? Или есть другой способ добиться этого?