第一步:创建了对话框工程之后,要添加背景,需要先将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);
}

 

保存后编译运行,效果如下:

至此初步完成,至于像素,图像大小等需要进一步学习。

posted on 2012-08-06 18:02  fengluo  阅读(301)  评论(0编辑  收藏  举报