HBITMAP和CBitmap的互相转换

1 HBITMAP转成CBitmap

HBITMAP   hBmp; 

方法①

CBitmap* pBmp = CBitmap::FromHandle(hBmp); 

方法②

CBitmap bmp; 
bmp.Attach(hBmp); 

方法①转换出来的临时CBitmap对象似乎并不是可靠的!MSDN上说这个临时只在某一时间段内有效。

等到某个空闲的时候,这个临时CBitmap对象会被清除掉。所以觉得还是方法②好一点

2 CBitmap转成HBITMAP 

方法①
CBitmap*   pBmp; 
HBITMAP   hBmp   =   (HBITMAP)(*pBmp);//(HBITMAP)是CBitmap类重载了的操作符.

方法②

CBitmap m_bitmap; 
HBITMAP h_bmp; 
h_bmp=m_bitmap.m_hObject;  

你可能感兴趣的:(2011年学习笔记,图像编程,基础知识)