4个回答
展开全部
CBitmap *mCBmp;
HBITMAP mHdlBmp;
BITMAP m_Bitmap;
mHdlBmp=(HBITMAP)LoadImage(NULL,bmp文件路 径,IMAGE_BITMAP,0,0,LR_CREATEDIBSECTION | LR_LOADFROMFILE);
//关于LoadImage方法见后边,他返回HANDLE类型,强制转换成HBITMAP即可
mCBmp->Attach(mHdlBmp);
//这个函数把一个HANDLE对象和GDI对象关联
//这个函数是CGDIObject类成员函数,CBitmap继承此类,根据C++多态性原理,CBitmap类没有重载这个函数,将调用父类的此函数
mCBmp->GetBitmap(&m_Bitmap);
//此函数从一个BITMAP结构获得CBitmap对象
mCBmp->Detach();
//从CGDIObject类对象中分离出GDI对象,并返回HANDLE对象
以下来自MSDN
============================================
1 CBitmap: MFC类,继承于CGdiObject,主要成员函数有:
Members:
CBitmap()
CreateBitmap()
CreateBitmapIndirect()
LoadBitmap()
GetBitmap()
FromHandle()
2 HBITMAP: 一种handle类型,
The BITMAP structure defines the type, width, height, color format, and bit values of a bitmap.
3 typedef struct tagBITMAP { 一个结构
LONG bmType;
LONG bmWidth;
LONG bmHeight;
LONG bmWidthBytes;
WORD bmPlanes;
WORD bmBitsPixel;
LPVOID bmBits;
} BITMAP, *PBITMAP;
4 关于LoadImage:
Header: Winuser.h.
HANDLE LoadImage(
HINSTANCE hinst,
LPCTSTR lpszName,
UINT uType,
int cxDesired,
int cyDesired,
UINT fuLoad
);
HBITMAP mHdlBmp;
BITMAP m_Bitmap;
mHdlBmp=(HBITMAP)LoadImage(NULL,bmp文件路 径,IMAGE_BITMAP,0,0,LR_CREATEDIBSECTION | LR_LOADFROMFILE);
//关于LoadImage方法见后边,他返回HANDLE类型,强制转换成HBITMAP即可
mCBmp->Attach(mHdlBmp);
//这个函数把一个HANDLE对象和GDI对象关联
//这个函数是CGDIObject类成员函数,CBitmap继承此类,根据C++多态性原理,CBitmap类没有重载这个函数,将调用父类的此函数
mCBmp->GetBitmap(&m_Bitmap);
//此函数从一个BITMAP结构获得CBitmap对象
mCBmp->Detach();
//从CGDIObject类对象中分离出GDI对象,并返回HANDLE对象
以下来自MSDN
============================================
1 CBitmap: MFC类,继承于CGdiObject,主要成员函数有:
Members:
CBitmap()
CreateBitmap()
CreateBitmapIndirect()
LoadBitmap()
GetBitmap()
FromHandle()
2 HBITMAP: 一种handle类型,
The BITMAP structure defines the type, width, height, color format, and bit values of a bitmap.
3 typedef struct tagBITMAP { 一个结构
LONG bmType;
LONG bmWidth;
LONG bmHeight;
LONG bmWidthBytes;
WORD bmPlanes;
WORD bmBitsPixel;
LPVOID bmBits;
} BITMAP, *PBITMAP;
4 关于LoadImage:
Header: Winuser.h.
HANDLE LoadImage(
HINSTANCE hinst,
LPCTSTR lpszName,
UINT uType,
int cxDesired,
int cyDesired,
UINT fuLoad
);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用API中的HBITMAP LoadBitmap(HINSTANCE hInstance, LPCTSTR lpBitmapName);
得到bmp的句柄
然后调用HBITMAP SetBitmap( HBITMAP hBitmap );
得到bmp的句柄
然后调用HBITMAP SetBitmap( HBITMAP hBitmap );
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是位图资源吗?
如果是的话试试用FindResource
如果是的话试试用FindResource
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
setBitmap()是什么?没听说过,解释下
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询