2013-03-07 96 views
3

如果我有一個名爲bitmapBITMAP,如何將其轉換爲HBITMAP?將BITMAP轉換爲HBITMAP

到目前爲止,我曾嘗試:

HBITMAP hbm = (HBITMAP)&bitmap; //doesn't work 

HANDLE hand = &bitmap; 
HBITMAP hbm = hand; //doesn't work 

CImage cim; 
cim.Attach(&bitmap); 
HBITMAP hbm = cim.Detach(); //definitely doesn't work 

CBitmap cbm; 
cbm.Attach(bitmap); 
CImage cim; 
cim.Attach(cbm.Detach()); 
HBITMAP hbm = cbm.Detach(); //desperate I know, horribly failed 

有一定是一些簡單的,一條線的方式來做到這一點,但我不能找到它。我可以得到一些幫助嗎?

回答

8

致電CreateBitmapIndirect通過您的BITMAP。嘿presto,返回HBITMAP

對於什麼是值得的,自己查找答案的好方法是轉到描述BITMAP的MSDN主題。向下滾動到頁面底部並查看另請參閱部分。使用該類型的最重要的功能將在那裏列出,實際上CreateBitmapIndirect就在那裏。這總是找出可以用任何特定的Win32類型完成的有用的方法。

相關問題