您的位置:首页 > 其它

Cimage和Cbitmap之间的 互相转换

2013-08-21 18:45 190 查看
CImage转为CBitmap:

CImage* img;

CBitmap* bm;

img->Load(lpszSourceName);

HBITMAP hbmp =(HBITMAP)img->operator HBITMAP();

bm->DeleteObject();

bm->Attach(hbmp);

//////////////////////////////////////////////

CBitmap转为CImage:

CImage* img;

CBitmap bm;

HBITMAP hbmp = (HBITMAP)bm.GetSafeHandle();

if(!img.IsNull())    //Attach前,必须确认img中无位图,否则会弹出异常,但忽略也可继续运行

img->Destroy();

img->Attach(hbmp);

另注:原对象中的位图改变后,所有Attach到这个对象的对象需从新Attach一次,否则图像为初始化的颜色或黑色!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mfc Cimage CBitmap