1.首先百度下载 .bmp格式的图片,也可以通过截图另存为.bmp格式的文件,后世使用图片编译工具将其他格式图片转化为.bmp格式的图片
2.按照下图添加资源:
导入成功后可以在Bitmap文件夹下看到名为IDB_BITMAP1的图片:
3.在XXXDlg.cpp下的OnPaint()函数中,else中注释掉原来的CDialog::OnPaint();,加入如下代码:
//添加代码对话框背景贴图
CPaintDC dc(this);
CRect rect;
GetClientRect(&rect); //获取对话框长宽
CDC dcBmp; //定义并创建一个内存设备环境
dcBmp.CreateCompatibleDC(&dc); //创建兼容性DC
CBitmap bmpBackground;
bmpBackground.LoadBitmap(IDB_BITMAP1); //载入资源中图片
BITMAP m_bitmap; //图片变量
bmpBackground.GetBitmap(&m_bitmap); //将图片载入位图中
//将位图选入临时内存设备环境
CBitmap *pbmpOld = dcBmp.SelectObject(&bmpBackground);
//调用函数显示图片StretchBlt显示形状可变
dc.StretchBlt(0, 0, rect.Width(), rect.Height(), &dcBmp, 0, 0, m_bitmap.bmWidth, m_bitmap.bmHeight, SRCCOPY);
运行结果:
子窗口设置参考链接:https://blog.csdn.net/qq_43524683/article/details/86498806