MFC 学习笔记之对话框背景图
2012-08-06 18:02
302 查看
第一步:创建了对话框工程之后,要添加背景,需要先将BMP图片资源导入项目中(不管是主对话框还是自对话框)。
具体步骤如下:
1、右键单击向导里的Resource Files->Add->Resource...
2、出现如下窗口,单击Bitmap,再点击Import...
3、弹出路径选择对话框,找到你想要作为背景的图片,打开即可(图略)。
4、导入成功后如下图:
5、修改ID
在Resource View 中新出现了一个Bitmap文件夹,将ID改成你需要的名字如:IDB_PIC_TWO(自己命名)
到此导入完成。
第二步:添加代码
在Source Files中找到UITestDlg.cpp(你的项目类),打开后找到void CUITestDlg::OnPaint(){};
(也可直接定位)。在else中添加如下代码:
保存后编译运行,效果如下:
至此初步完成,至于像素,图像大小等需要进一步学习。
具体步骤如下:
1、右键单击向导里的Resource Files->Add->Resource...
2、出现如下窗口,单击Bitmap,再点击Import...
3、弹出路径选择对话框,找到你想要作为背景的图片,打开即可(图略)。
4、导入成功后如下图:
5、修改ID
在Resource View 中新出现了一个Bitmap文件夹,将ID改成你需要的名字如:IDB_PIC_TWO(自己命名)
到此导入完成。
第二步:添加代码
在Source Files中找到UITestDlg.cpp(你的项目类),打开后找到void CUITestDlg::OnPaint(){};
(也可直接定位)。在else中添加如下代码:
else { CPaintDC dc(this); // 创建兼容DC CDC dcMemory; dcMemory.CreateCompatibleDC(&dc); // 载入位图 CBitmap bmpLead; bmpLead.LoadBitmapA(IDB_PIC_TWO); // 获取位图信息 BITMAP bmpInfo; bmpLead.GetBitmap(&bmpInfo); // 将位图载入内存,返回旧值 CBitmap *pOldBitmap = dcMemory.SelectObject(&bmpLead); // 获取目标矩形客户区坐标用于绘图 CRect rect; GetClientRect(&rect); dc.StretchBlt(0, 0, rect.Width(), rect.Height(), &dcMemory, 0, 0, bmpInfo.bmWidth, bmpInfo.bmHeight, SRCCOPY); // 载入旧值 dcMemory.SelectObject(pOldBitmap); DeleteObject(bmpLead); }
保存后编译运行,效果如下:
至此初步完成,至于像素,图像大小等需要进一步学习。
相关文章推荐
- Mfc 对话框学习笔记(1)
- VS2013MFC对话框工程学习笔记二 - 了结布局和一些基本的窗口组件
- VS2013MFC对话框工程学习笔记八 - C++关键字(标识符)的学习
- VS2013MFC单文档工程学习笔记八 - 为窗口添加一张背景图片
- MFC学习笔记之八————颜色对话框与字体对话框
- MFC学习笔记——CDialog(设置对话框控件的Tab顺序)
- [MFC学习笔记]--lesson8 对话框的设计
- MFC学习笔记(四)- 模态对话框与非模态对话框的创建与显示
- VS2013MFC对话框工程学习笔记十二 -
- MFC学习之 对话框设置背景颜色及控件透明的方法
- MFC学习笔记之多对话框中使用定时器
- VS2013MFC对话框工程学习笔记三 - 添加一个MFC类库的按钮响应事件
- VS2013MFC对话框工程学习笔记六 - 了解C++的数据类型
- VS2013MFC对话框工程学习笔记十 - 头文件的引用
- VS2010 C++ MFC框架学习笔记3 - 控件Tab顺序设置及模态对话框
- 孙鑫VC学习笔记:第十五讲 (四) 编写一个基于MFC对话框的聊天程序
- VS2013MFC对话框工程学习笔记七 - C++数据类型 - 整形 的简单学习
- MFC学习笔记之对话框
- opencv [c++版] 学习笔记(2) 在MFC基于对话框界面上播放视频
- VS2013MFC对话框工程学习笔记九 - C++语法的的学习