本人MFC初学者,本周刚学会bmp图片显示,总结的一点心得
bmp显示无非几种情况:
1、知道位图路径
2、位图已经加载到资源
3、位图像素数据在内存中
显示:
CBitmap pbitmap;
第一种情况:
HBITMAP hbitmap = (HBITMAP)::LoadImage(::AfxGetInstanceHandle(), "绝对路径", IMAGE_BITMAP,0,0,LR_LOADFROMFILE|LR_CREATEDIBSECTION);
pbitmap.Attach(hbitmap);
第二种情况 :
pbitmap.LoadBitmap(位图ID);
第三种情况:
调用CBitmap 的CreateBitmap,或者生成BITMAP,再调用CreateBitmapIndirect。
以上情况得到Cbitmap对象后,
CDC memDC;
memDC.CreateCompatibleDC(dc);
memDC.SelectObject(pbitmap);
最后调用BitBlt或者StretchBlt 显示
其他还有一些细节需要注意