MFC导入位图的方法

可以使用两种方法导入位图文件,一种是从项目资源中导入,另一种是从磁盘中导入。

1 从项目资源中导入位图

使用该方法导入位图文件时,必须先将位图文件导入到项目资源中。

1.1 位图资源的导入

导入位图资源的方法与导入图标资源的方法类似,见《MFC导入图标文件的方法》。

1.2 通过::LoadBitmap()函数获取位图句柄

可以通过Windows API函数LoadImage()来获位图句柄。该函数的格式为

HBITMAP LoadBitmap(HINSTANCE hInstance, LPCTSTR lpBitmapName);

其中,函数hInstance表示包含该图像资源的模块的句柄;lpBitmapName是位图资源的名称。LoadImage()的返回值即为位图资源的句柄。

HBITMAP hBitmap1 = ::LoadBitmap(
AfxGetInstanceHandle()
, MAKEINTRESOURCE(IDB_BITMAP1)
);
其中,AfxGetInstanceHandle() MFC 的全局函数,该函数的作用是返回标识当前应用程序实例的句柄,即 HINSTANCE MAKEINTRESOURCE() 宏的作用是将一个整型资源 ID 转换为 LPTSTR 数据类型的 ID IDB_BITMAP1 是在“1.1 位图资源的导入”中导入的位图文件 ID

1.3 通过LoadImage()函数获取位句柄

MFC导入图标文件的方法》中介绍了LoadImage()函数的使用方法。在通过该函数导入位图时,只需将LoadImage()函数的第三个参数设置为IMAGE_BITMAP即可。

HBITMAP hBitmap2 = (HBITMAP)::LoadImage(
AfxGetInstanceHandle()
, MAKEINTRESOURCE(IDB_BITMAP1)
, IMAGE_BITMAP
, 0
, 0
, LR_DEFAULTCOLOR
);

2 从磁盘中导入位图文件

MFC导入图标文件的方法》中介绍了通过LoadImage()函数从磁盘中导入图标文件的方法,可以使用相同的方法从磁盘中导入位图,只需将LoadImage()函数的第三个参数改为IMAGE_BITMAP即可。

HBITMAP hBitmap3 = (HBITMAP)::LoadImage(
NULL
, _T("C:\\bing.bmp")
, IMAGE_BITMAP
, 0
, 0
, LR_LOADFROMFILE
);


 

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值