VC按钮显示图片

1。下载 PictureEx.h和PictureEx.cpp两个文件

把这两个文件放在工程的文件夹里面,然后在将这两个文件添加到工程里面去,这样你的工程里就多了一个类了:CPictureEx

2.将你要加载的GIF图片添加到项目文件夹里,这里我命名为:"inter.gif"

3。在试图类的头文件里添加:   #include "PictureEx.h"

定义一个对象:  CPictureEx m_GifPic;

4.在视图类的OnCreate中创建 CPictureEx 对象并加载图片:

   m_GifPic.Create(NULL,WS_CHILD | WS_VISIBLE |SS_ENHMETAFILE,CRect(50,50,100,100),this,1234);
  m_GifPic.Load(_T("inter.gif"));

 m_GifPic.ShowWindow(SW_HIDE);//SW_SHOW

注意:这一步骤不要在OnDraw里面实现,否则会出现错误,我一开始时一直有问题就是这个原因,还有load必须在movewindow(下一步的函数)之前,否则不会显示图片,还有就是load也可以放到ondraw里面去,但是那么做的话速度明显不行了。

5。在ondraw里改变窗口位置并显示图片

 CRect rc =CRect(100,400,150,450);

 m_GifPic.MoveWindow(&rc,true);

 m_GifPic.Draw();

 m_GifPic.ShowWindow(SW_SHOW);

:一开始一直不知道怎么改变窗口位置,后来在CSDN上发帖求助,才知道时MOVEWINDOW函数,看来经验还是不足啊,我应该自己想到的。

就这样,就可以显示动态的GIF图片了。

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/adriano119/archive/2009/01/15/3786378.aspx

 

 

 

1,按钮属性 Onwer Drew选上,按钮ID: IDC_BUTTON1

2,定义private变量:

CBitmapButton m_button;

3,在初始化里边

m_button.LoadBitmaps(IDB_BITMAP1, IDB_BITMAP2);//IDB_BITMAP1:平时;IDB_BITMAP2:按下

m_button.SubclassDlgItem(IDC_BUTTON1, this);

m_button.SizeToContent();

这种方法还可以

你可能感兴趣的:(C++文章)