(二)MFC学习之贴图

本文介绍了在Win10+VS2017环境下,使用MFC进行位图加载和贴图的操作。通过CBitmap和CDC类,详细讲解了如何从文件加载BMP格式的位图,并在窗口的客户区进行按位与、按位或和颜色覆盖的绘图操作。同时,文章强调了图片格式必须为BMP,且路径应正确设置,否则可能导致无法显示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

环境:win10+vs2017+mfc

涉及到的内容:

1,位图的加载

CBitmap * m_Bitmap=new CBitmap;

m_BitMAP->m_hObject=LoadImage(NULL,"**.BMP",IMAGE_BITMAP,0,0,LR_LOADFROMFILE);

2,位图的运算

CClientDc dc(this);

dc.BitBlt(dc.BitBlt(x, 300,  63,154, m_Dc,63,0, SRCAND);//颜色按位与

***SRCPAINT;//颜色按位或

***SRCCOPY;//颜色覆盖

用到的类:

最基本肯定是少不了CMyApp和CMyWnd(上一篇博客已经说到)

其余的则是与位图操作相关,绘图相关的

主要是CDC和CBitmap

CDC:

MSDN说明:

The CDC object provides member functions for working with a device context, such as a display or printer, as well as members for working with a display context associated with the client area of a window.

大意是说CDC提供成员函数处理设备环境,比如显示和打印,也是处理窗口的客户区域显示,这里贴图主要是使用到后者,对客户区域的显示

CBitmap:大意是说,构建与位图相关联的对象,相当于java中的File对象,构建操作文件的对象

To use a CBitmap object, construct the object, attach a bitmap handle to it with one of the initialization member functions, and then call the object's member functions.

代码实现:

#include <afxwin.h>

class CMyWnd :public CFrameWnd {

private:
	CDC * mdc;
	CBitmap *mbmp,*mbmpBack;

public:
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值