我创建了一个ActiveX控件(COleControl)。现在我想添加滚动,但我不能让它工作。我已经加入了滚动条已经和他们的功能。不过,我不能移动我的图纸。
我试图修改的BitBlt()xSrc和ySrc参数,但我必须失去了一些东西。
有人可以帮忙吗?
OnDraw(...)
{
CRgn rgn;
CDC dcMem;
CBitmap bmpMem;
CBitmap* pOldBmp = NULL;
if (!pdc)
return;
rgn.CreateRectRgnIndirect(rcBounds);
pdc->SelectClipRgn(&rgn);
dcMem.CreateCompatibleDC(pdc);
bmpMem.CreateCompatibleBitmap(pdc, rcBounds.Width(), rcBounds.Height());
pOldBmp = (CBitmap*) dcMem.SelectObject(&bmpMem);
// draw
.
.
.
pdc->BitBlt(rcBounds.left, rcBounds.top, rcBounds.Width(), rcBounds.Height(), &dcMem, 0, 0, SRCCOPY);
pdc->SelectClipRgn(NULL);
rgn.DeleteObject();
dcMem.SelectObject(pOldBmp);
bmpMem.DeleteObject();
dcMem.DeleteDC();
}