吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3012|回复: 0
收起左侧

[C&C++ 转载] 【VC】【转载】MFC显示GIF

[复制链接]
iokey 发表于 2019-6-24 14:33
本帖最后由 iokey 于 2019-6-24 14:57 编辑

         显示gif动画,这里用到CPictureEx类库,从网上能找到,下面一步一步来实现显示gif动画。

1、创建一个对话框,在对话框上添加一个图片控制和一个文控件,效果如下图:



2、图中的正方形块就是图片控件,右键点击它-->属性,修改两个属性,如下图:



3、选中图片控件,Ctrl + 双击,给它添加成员变量:
[C++] 纯文本查看 复制代码
// CStatic m_gifCtrl;
CPictureEx m_gifCtrl;


添加的变量是CStatic m_gifCtrl,我们把它改成CPictureEx m_gifCtrl,当然,要添加CPictureEx头文件,在对话框的头文件中添加:
[C++] 纯文本查看 复制代码
#include "PictureEx.h"


4、在对话框的OnInitDialog()函数中添加如下代码就可以显示动态gif图片了:
[C++] 纯文本查看 复制代码
BOOL CMFC_GIFDlg::OnInitDialog()
{
        CDialog::OnInitDialog();

        // Set the icon for this dialog.  The framework does this automatically
        //  when the application's main window is not a dialog
        SetIcon(m_hIcon, TRUE);                        // Set big icon
        SetIcon(m_hIcon, FALSE);                // Set small icon
        
        // TODO: Add extra initialization here
        CString strFile = GetAppPath() + _T("dog.gif");
        if (m_gifCtrl.Load(strFile))
        {
                m_gifCtrl.Draw();
        }

        return TRUE;  // return TRUE  unless you set the focus to a control
}


这里我把gif图片放到了执行文件的目录下,所以调用GetAppPath()函数来获取执行文件的目录,GetAppPath()函数代码如下:
[C++] 纯文本查看 复制代码
// 获取执行文件所有的路径


CString GetAppPath()   
{   
        CString strTemp;   
        TCHAR *pBuf = strTemp.GetBuffer(MAX_PATH);
        
        ::GetModuleFileName(NULL, pBuf, MAX_PATH);   
        strTemp.ReleaseBuffer();
        strTemp = strTemp.Left(strTemp.ReverseFind(_T('\\'))) + _T('\\');
        return strTemp;
}






免费评分

参与人数 2吾爱币 +2 热心值 +2 收起 理由
hohov + 1 用心讨论,共获提升!
苏紫方璇 + 2 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-16 10:43

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表