第一步:创建了对话框工程之后,要添加背景,需要先将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中添加如下代码:
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); }
保存后编译运行,效果如下:
至此初步完成,至于像素,图像大小等需要进一步学习。