返回首页

我创建了一个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();

}

回答

评论会员: 时间:2
K