并不是所有的设备都支持BitBlt函数。更多信息,调用GetDeviceCaps 函数,将第二个参数赋值为RC_BITBLT来查看设备是否支持。(For more information, see the RC_BITBLT raster capability entry in the GetDeviceCaps function, as well as the MaskBlt and StretchBlt functions. )
如果源和目标设备环境代表不同的设备,那么BitBlt函数返回错误。
更多关于从右到左向位块传输显示信息(For information about blitting to displays with right-to-left orientations),参见 Creating Bitmaps。
在Windows CE 1.0和1.01版中,参数dwRop只可以指定为下列值:SRCCOPY、SRCAND、SRCPAINT、SRCINVERT。在Windows CE 2.0及以后版中,参数dwRop可以是任何ROP3代码值。
下面是MSDN上的例子:
HBITMAP CopyBitmap( HBITMAP hbm) { HDC hdcSrc = CreateCompatibleDC(NULL); HDC hdcDst = CreateCompatibleDC(NULL); HBITMAP hbmOld, hbmOld2, hbmNew; BITMAP bm; GetObject(hbm, sizeof(bm), &bm); hbmOld = SelectObject(hdcSrc, hbm); hbmNew = CreateBitmap( bm.bmWidth, bm.bmHeight, bm.bmPlanes, bm.bmBitsPixel, NULL); hbmOld2 = SelectObject(hdcDst, hbmNew); BitBlt(hdcDst, 0, 0, bm.bmWidth, bm.bmHeight, hdcSrc, 0, 0, SRCCOPY); SelectObject(hdcSrc, hbmOld); SelectObject(hdcDst, hbmOld2); DeleteDC(hdcSrc); DeleteDC(hdcDst); return hbmNew; }
如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
—-想了解C++中BitBlt的使用方法详解分享!全部内容且更多的C语言教程关注<计算机技术网(www.ctvol.com)!!>
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/c-cdevelopment/482021.html