第一种:在你建立的MFC工程的.***app的文件的初始化函数里加上对于环境变量的初始化,以及图片的加载,
BOOL **********Dlg::On
{
.........
CRect rect;
CDC dc;
GetClientRect(&rect);
mdc=new CDC;
bitmap=new CBitmap;
bgmap=new CBitmap;
bemap=new CBitmap;
mdc->CreateCompatibleDC(&dc);
bgmap->m_hObject=(HBITMAP)::LoadImage(NULL,"无标题.bmp",
IMAGE_BITMAP,rect.right,rect.bottom,LR_LOADFROMFILE);
bitmap->m_hObject=(HBITMAP)::LoadImage(NULL,"标题.bmp",
IMAGE_BITMAP,rect.right,rect.bottom,LR_LOADFROMFILE);
bemap->m_hObject=(HBITMAP)::LoadImage(NULL,"标题1.bmp",
IMAGE_BITMAP,rect.right,rect.bottom,LR_LOADFROMFILE);
}
然后在该文件的On
void CCanvasFrameDlg::On
{
if (IsIconic())
{
..........
}
else
{
CPaintDC dc(this); // device context for painting
CRect rect;
GetClientRect(&rect);
mdc->SelectObject(bgmap);
dc.BitBlt(0,0,rect.right,rect.bottom,mdc,0,0,SRCCOPY);
mdc->SelectObject(bemap);
dc.BitBlt(0,0,500,600,mdc,0,0,SRCAND);
mdc->SelectObject(bitmap);
dc.BitBlt(0,0,500,600,mdc,0,0,SRCPAINT);
}
}
这样就可以把背景加载到了主对话框,成为其背景,但是要为别的对话框加载背景图片,那么就得在其相应的初始化函数里加上前的初始化代码,在其On
加载gif格式的动画图片
加载动画图片gif格式的图片的一种很好的方法就是用已有现成的类实现自己的功能,我在网上见到了一个很好的类,其加载这种图片文件很容易,现在在这里一起和大家分享一下,将PictureEx.h,PictureEx.cpp两个文件为类文件加载到我们自己的工程里。
现在让我们来看看它的加载过程,
1.加入图片控件:从对话框控件中把Picture Control(图片控件)拖入主对话框中,修改其属性:ID:IDC_GIF,TYPE:Rectangle,其余接受缺省选项。再在ClassWiard中为IDF_GIF加入CSatic控制变量m_GifPic, 注意看一下,******Dlg.h中是否加上了#include "PictureEx.h"(由ClassWiard加入)。然后将CSatic m_GifPic;更改成CPictureEx m_GifPic;
2.加载动画文件:先将要加载的动画文件放到 res 资源文件夹下,再将其Imp
在resourceview窗口中,单击鼠标右键,在出现的环境菜单中选择“imp
3.在程序的适当位置添入加载代码: 这里,我们在C*****Dlg::On
// TODO: Add extra initialization here
if (m_GifPic.Load(MAKEINTRESOURCE(IDR_GIFROARING),_T("Gif")))
m_GifPic.Draw();