当前视图的绘图模式:MM_ISOTROPIC, 视图能够放大缩小
我想在刷新的时候,先在内存DC中将图形绘制好,再BitBlt到视图DC,
怎样创建memDC 及设置 CreateCompatibleBitmap的位图大小?
创建的memDC也需要使用SetViewportExt和SetViewportExt设置和视图DC相同
的作图比例吗?

解决方案 »

  1.   

    看看这段代码,会有帮助的
    OnDraw()
    {
    CRect rect;
    GetClientRect(&rect);
    CDC compDC;
    compDC.CreateCompatibleDC(&dc);
    CBitmap bitmap;
    bitmap.CreateCompatibleBitmap(&dc, rect.Width(), rect.Height());
    CBitmap * pOldBitmap = compDC.SelectObject(&bitmap);//paint your compDCdc.BitBlt(rect.left, rect.top, rect.Width(), rect.Height(), &compDC, rect.left, rect.top, SRCCOPY);
    compDC.SelectObject(pOldBitmap);
    bitmap.DeleteObject();
    compDC.DeleteDC();
    }