今日小弟搞了一个小程序(基于对话框的)练手
但是我放不上bmp位图呀?
我是这样做的:
CBitmap bmp ;
bmp.LoadBItmap(IDB_MAP1) ;
但是接下来我就不知道了
还请各位前辈指点!
谢谢!!
但是我放不上bmp位图呀?
我是这样做的:
CBitmap bmp ;
bmp.LoadBItmap(IDB_MAP1) ;
但是接下来我就不知道了
还请各位前辈指点!
谢谢!!
调试欢乐多
CBitmap* pOldBmp=pDC->SelectObject( &bmp );
pDC->BitBlt(...);
pDC->SelectObject( pOldBmp );
CDC memDC;
memDC.CreateCompatibleDC( &dc );
CBitmap * bitmap = new CBitmap(); HBITMAP hBitmap = NULL;
hBitmap = (HBITMAP)LoadImage(NULL, lpszBmpFile, IMAGE_BITMAP, 0, 0,
LR_LOADFROMFILE | LR_CREATEDIBSECTION | LR_DEFAULTSIZE);
bitmap->Attach(hBitmap); CBitmap * pOldBitmap = (CBitmap *) memDC.SelectObject( bitmap );
if (pOldBitmap == NULL) // if bitmap is very big, better check this !
{
memDC.DeleteDC();
delete bitmap;
return;
}
dc.BitBlt(x, y, nWidth, nHeight, &memDC, 0, 0, SRCCOPY);
memDC.SelectObject(pOldBitmap);
delete bitmap;
memDC.DeleteDC();
CDC memDC;
memDC.CreateCompatibleDC( &dc );
CBitmap * bitmap = new CBitmap(); HBITMAP hBitmap = NULL;
hBitmap = (HBITMAP)LoadImage(NULL, lpszBmpFile, IMAGE_BITMAP, 0, 0,
LR_LOADFROMFILE | LR_CREATEDIBSECTION | LR_DEFAULTSIZE);
bitmap->Attach(hBitmap); CBitmap * pOldBitmap = (CBitmap *) memDC.SelectObject( bitmap );
if (pOldBitmap == NULL) // if bitmap is very big, better check this !
{
memDC.DeleteDC();
delete bitmap;
return;
}
dc.BitBlt(x, y, nWidth, nHeight, &memDC, 0, 0, SRCCOPY);
memDC.SelectObject(pOldBitmap);
delete bitmap;
memDC.DeleteDC();
CPaintDC dc(this);
CDC memDC;
memDC.CreateCompatibleDC( &dc );
CBitmap bmp;
bmp.LoadBitmap(IDB_YOURBMP); BITMAP bm;
bmp.GetBitmap(&bm);
CBitmap * pOldBitmap = (CBitmap *) memDC.SelectObject(&bmp);
dc.BitBlt(x, y, bm.bmWidth, bm.bmHeight, &memDC, 0, 0, SRCCOPY);
memDC.SelectObject(pOldBitmap);
bmp.DeleteObject();
memDC.DeleteDC();