资源描述:
《vc中加载图片的几中方法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、VC中加载图片的几中方法 2010-02-0909:04:27
2、 分类:默认分类
3、 标签:
4、字号大中小 订阅 我用的最多,感觉也是最简单的一种就是以前我在我的空间介绍过的那种,现在都在这里统一说一下,以便大家有一个选择, 第一种:在你建立的MFC工程的.***app的文件的初始化函数里加上对于环境变量的初始化,以及图片的加载,BOOL**********Dlg::OnInitDialog(){......... CRectrect; CDCdc;
5、 GetClientRect(&rect); mdc=newCDC; bitmap=newCBitmap; bgmap=newCBitmap; bemap=newCBitmap; mdc->CreateCompatibleDC(&dc); bgmap->m_hObject=(HBITMAP)::LoadImage(NULL,"无标题.bmp", IMAGE_BITMAP,rect.right,rect.bottom,LR_L
6、OADFROMFILE); 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);} 然
7、后在该文件的Onpaint函数里,加上下面的代码:voidCCanvasFrameDlg::OnPaint(){ if(IsIconic()) { .......... } else { CPaintDCdc(this);//devicecontextforpainting CRectrect; GetClientRect(&rect); mdc->Sele
8、ctObject(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,SRCPAIN
9、T); }} 这样就可以把背景加载到了主对话框,成为其背景,但是要为别的对话框加载背景图片,那么就得在其相应的初始化函数里加上前的初始化代码,在其Onpaint函数了加上相应的代码,就可以。加载gif格式的动画图片加载动画图片gif格式的图片的一种很好的方法就是用已有现成的类实现自己的功能,我在网上见到了一个很好的类,其加载这种图片文件很容易,现在在这里一起和大家分享一下,将PictureEx.h,PictureEx.cpp两个文件为类文件加载到我们自己的工程里。现在让我们来看看它的加载
10、过程,1.加入图片控件:从对话框控件中把PictureControl(图片控件)拖入主对话框中,修改其属性:ID:IDC_GIF,TYPE:Rectangle,其余接受缺省选项。再在ClassWiard中为IDF_GIF加入CSatic控制变量m_GifPic,注意看一下,******Dlg.h中是否加上了#include"PictureEx.h"(由ClassWiard加入)。然后将CSaticm_GifPic;更改成CPictureExm_GifPic; 2.加载动画文件:先将要加载的动画文件放到res
11、资源文件夹下,再将其Import进项目中,由于MFC只支持256BMP文件的图片,因此,我们要新建一个图片类型:"GIF",roaring.gif放进去,并将其ID修改成:IDR_GIFROARING。import(导入)gif动画的详细过程:在resourceview窗口中,单击鼠标右键,在出现的环境菜单中选择“import...”命令,会出现“importresource”选择文件对话框,文件类型选择“所有文