MFC中在界面上添加背景图片的方法

在利用MFC做界面监控软件时,常常需要放一个漂亮的背景图片,本文基于VS2010版本,利用MFC自带的onPaint函数添加背景图片。步骤如下:

1、准备一张BMP格式的图片文件,将其保存在项目文件夹res下,在资源视图中的Bitmap上点击右键,添加资源->Bitmap->导入->在保存的res文件夹下选择图片->打开,这样图片就算添加进去了。
2、点击刚刚插入的图片,在属性窗口修改ID,在这里我修改为IDB_BITMAP_BACKGROUND,接下来就是将背景图片插入对应的对话框中了。添加OnPaint函数:一般新建工程的对话框都自动添加了OnPaint函数。如果是新添加的对话框,则需先添加基于对话框的类,然后在类视图窗口点击该类,在对应的属性窗口有个消息的图标,点击该图标,在下面找到WM_PAINT,添加OnPaint函数。
3、在OnPaint函数中添加入下代码:

    //添加背景图片
    CPaintDC dc(this);                           //定义CPaint指针
    CBitmap   bitmap;                            //定义位图
    bitmap.LoadBitmap(IDB_BITMAP_BACKGROUND);    //这个IDB_BITMAP1要自己添加
    CBrush   brush;                              
    brush.CreatePatternBrush(&bitmap);
    CBrush*   pOldBrush   =   dc.SelectObject(&brush);
    dc.Rectangle(0,0,747,439);                  //前两个为图片起始位置,后两个为图片终点位置,实际为图片的像素大小
    dc.SelectObject(pOldBrush);

需要注意的是:
1、程序第一句CPaintDC dc(this); 如果原来的OnPaint函数中已经定义了,则这句省略;
2、程序第三句中的IDB_BITMAP_BACKGROUND是你添加到项目里面的背景图片的ID;
3、程序这句话的四个参数dc.Rectangle(0,0,747,439); 0,0表示图片起始位置,不用修改;747和439是对应你的BMP格式背景图片的像素大小,即图片的尺寸。

你可能感兴趣的:(vs2010,mfc,C++,VS2010,mfc,OnPaint函数,界面添加背景图片)