关于位图操作的一个问题,急, 万分感谢!
boge 2000-05-29 03:57:00 目的: 将某一区域以一位图刷刷满,并将整个区域一起贴出去
下面是code: 其中dc为中介内存DC, pDC为最终的DC
CDC *dc;
CBitmap *CompatibleBitmap;
CBitmap * pdcOldBmp;
dc = new CDC();
CompatibleBitmap =new CBitmap();
dc->CreateCompatibleDC (0);
CompatibleBitmap->CreateCompatibleBitmap (dc, rect.Width(), rect.Height());
pdcOldBmp = dc->SelectObject (CompatibleBitmap);
CBrush * pWallBrush = new CBrush;
pWallBrush->CreatePatternBrush(&bmpBLK);
dc->FillRect(CRect(0, 0, rect.Width(), rect.Height()), pWallBrush);
delete pWallBrush;
delete CompatibleBitmap;
pDC->BitBlt(nStartX,
nStartY,
nWidth,
nHeight,
dc,
0,
0,
SRCCOPY);
显示的结果是位图是出来了,但变成了黑白两色了.
请问是什么原因? 改正方法?