首页

c# winform 播放gif图片实例(可暂停播放) 附完整源码

c#

2020-8-30

一个播放gif图片的实例,如图

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace PlayGifAnimation
{
    public partial class Frm_Main : Form
    {
        public Frm_Main()
        {
            InitializeComponent();
        }

        Bitmap bitmap = new Bitmap(Application.StartupPath   "\\1.gif");				//实例化一个GDI 绘图图面对象
        bool current = false;			//初始化一个bool型的变量current
        public void PlayImage()
        {
            if (!current) 			//当该值为true时
            {
                ImageAnimator.Animate(bitmap, new EventHandler(this.OnFrameChanged)); 	//将多帧图片显示为动画图像
                current = true; 		//设定current的值为true
            }
        }
        private void OnFrameChanged(object o, EventArgs e)
        {
            this.Invalidate(); 			//使控件的整个图片无效并导致重绘事件
        }
        protected override void OnPaint(PaintEventArgs e)
        {
            e.Graphics.DrawImage(this.bitmap, new Point(1, 1)); 	//从指定的位置绘制图片
            ImageAnimator.UpdateFrames(); 					//使该帧在当前正被图画处理的所有图像中前移
        }
        private void button1_Click(object sender, EventArgs e)
        {
            PlayImage();			//播放
            ImageAnimator.Animate(bitmap, new EventHandler(this.OnFrameChanged)); 	//将多帧图像显示为动画
        }
        private void button2_Click(object sender, EventArgs e)
        {
            ImageAnimator.StopAnimate(bitmap, new EventHandler(this.OnFrameChanged)); 	//停止
        }
    }
}
资源下载此资源下载价格为2D币(VIP免费),请先
资源文件列表
PlayGifAnimation/PlayGifAnimation.sln , 938
PlayGifAnimation/PlayGifAnimation.suo , 15360
PlayGifAnimation/PlayGifAnimation.v11.suo , 26624
PlayGifAnimation/PlayGifAnimation/bin/Debug/1.gif , 1327347
PlayGifAnimation/PlayGifAnimation/bin/Debug/PlayGifAnimation.exe , 9216
PlayGifAnimation/PlayGifAnimation/bin/Debug/PlayGifAnimation.pdb , 24064
PlayGifAnimation/PlayGifAnimation/Frm_Main.cs , 1756
PlayGifAnimation/PlayGifAnimation/Frm_Main.designer.cs , 2676
PlayGifAnimation/PlayGifAnimation/Frm_Main.resx , 5814
PlayGifAnimation/PlayGifAnimation/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache , 7188
PlayGifAnimation/PlayGifAnimation/obj/Debug/PlayGifAnimation.csproj.FileListAbsolute.txt , 2539
PlayGifAnimation/PlayGifAnimation/obj/Debug/PlayGifAnimation.csproj.GenerateResource.Cache , 850
PlayGifAnimation/PlayGifAnimation/obj/Debug/PlayGifAnimation.csprojResolveAssemblyReference.cache , 1757
PlayGifAnimation/PlayGifAnimation/obj/Debug/PlayGifAnimation.exe , 9216
PlayGifAnimation/PlayGifAnimation/obj/Debug/PlayGifAnimation.Frm_Main.resources , 180
PlayGifAnimation/PlayGifAnimation/obj/Debug/PlayGifAnimation.pdb , 24064
PlayGifAnimation/PlayGifAnimation/obj/Debug/PlayGifAnimation.Properties.Resources.resources , 180
PlayGifAnimation/PlayGifAnimation/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll , 4608
PlayGifAnimation/PlayGifAnimation/PlayGifAnimation.csproj , 4001
PlayGifAnimation/PlayGifAnimation/Program.cs , 500
PlayGifAnimation/PlayGifAnimation/Properties/AssemblyInfo.cs , 1364
PlayGifAnimation/PlayGifAnimation/Properties/Resources.Designer.cs , 2872
PlayGifAnimation/PlayGifAnimation/Properties/Resources.resx , 5612
PlayGifAnimation/PlayGifAnimation/Properties/Settings.Designer.cs , 1116
PlayGifAnimation/PlayGifAnimation/Properties/Settings.settings , 249
没有账号? 忘记密码?

社交账号快速登录