void DrawMyButton()
{
CRect rt;
//m_bmpbutton为一个CButton的变量
m_bmpbutton.GetWindowRect (rt);
CDC* bmpDC=m_bmpbutton.GetWindowDC ();
CDC* bmpMemDC=new CDC;
CBitmap* olebmp;
CBitmap* bmp=new CBitmap;
bmp->LoadBitmap (IDB_BITMAP1);
olebmp=bmpMemDC->SelectObject (bmp);
bmpDC->BitBlt (rt.left ,rt.top ,rt.Width (),rt.Height (),bmpMemDC,0,0,SRCCOPY);
bmpMemDC->SelectObject (olebmp);
this->ReleaseDC (bmpDC);
this->ReleaseDC (bmpMemDC);
delete bmp;
delete olebmp;
}
这样绘制按扭怎么不行呀?
目的: 在一个按扭上面绘制一个bmp图象
错误: BitBlt函数出错
请大家指教,谢谢!
bmpDC和bmpMemDC没有任何关系阿。
调用CDC::CreateCompatibleDC
virtual BOOL CreateCompatibleDC( CDC* pDC );
函数,使两个dc兼容。