欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

C#Winform中繪制動畫的方法-創(chuàng)新互聯(lián)

這篇文章主要講解了C# Winform中繪制動畫的方法,內(nèi)容清晰明了,對此有興趣的小伙伴可以學(xué)習(xí)一下,相信大家閱讀完之后會有幫助。

成都創(chuàng)新互聯(lián)是專業(yè)的肇源網(wǎng)站建設(shè)公司,肇源接單;提供成都網(wǎng)站建設(shè)、成都網(wǎng)站制作,網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進行肇源網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!

前言

這里介紹一個.net自身攜帶的類ImageAnimator,這個類類似于控制動畫的時間軸,使用ImageAnimator.CanAnimate可以判斷一個圖片是否為動畫,調(diào)用ImageAnimator.Animate可以開始播放動畫,即每經(jīng)過一幀的時間觸發(fā)一次OnFrameChanged委托,我們只要在該委托中將Image的活動幀選至下一幀再迫使界面重繪就可以實現(xiàn)動畫效果了。

為了方便以后的使用,我將這些代碼整合到了一起,形成一個AnimateImage類,該類提供了CanAnimate、FrameCount、CurrentFrame等屬性,以及Play()、Stop()、Reset()等動畫常用的方法,代碼如下

using System;  
using System.Collections.Generic;  
using System.Text;  
using System.Drawing;  
using System.Drawing.Imaging;  
 
namespace GifTest  
{  
  /// <summary>  
  /// 表示一類帶動畫功能的圖像。  
  /// </summary>  
  public class AnimateImage  
  {  
    Image image;  
    FrameDimension frameDimension;  
    /// <summary>  
    /// 動畫當(dāng)前幀發(fā)生改變時觸發(fā)。  
    /// </summary>  
    public event EventHandler<EventArgs> OnFrameChanged;  
 
    /// <summary>  
    /// 實例化一個AnimateImage。  
    /// </summary>  
    /// <param name="img">動畫圖片。</param>  
    public AnimateImage(Image img)  
    {  
      image = img;  
 
      lock (image)  
      {  
        mCanAnimate = ImageAnimator.CanAnimate(image);  
        if (mCanAnimate)  
        {  
          Guid[] guid = image.FrameDimensionsList;  
          frameDimension = new FrameDimension(guid[0]);  
          mFrameCount = image.GetFrameCount(frameDimension);  
        }  
      }  
    }  
 
    bool mCanAnimate;  
    int mFrameCount = 1, mCurrentFrame = 0;  
 
    /// <summary>  
    /// 圖片。  
    /// </summary>  
    public Image Image  
    {  
      get { return image; }  
    }  
 
    /// <summary>  
    /// 是否動畫。  
    /// </summary>  
    public bool CanAnimate  
    {  
      get { return mCanAnimate; }  
    }  
 
    /// <summary>  
    /// 總幀數(shù)。  
    /// </summary>  
    public int FrameCount  
    {  
      get { return mFrameCount; }  
    }  
 
    /// <summary>  
    /// 播放的當(dāng)前幀。  
    /// </summary>  
    public int CurrentFrame  
    {  
      get { return mCurrentFrame; }  
    }  
 
    /// <summary>  
    /// 播放這個動畫。  
    /// </summary>  
    public void Play()  
    {  
      if (mCanAnimate)  
      {  
        lock (image)  
        {  
          ImageAnimator.Animate(image, new EventHandler(FrameChanged));  
        }  
      }  
    }  
 
    /// <summary>  
    /// 停止播放。  
    /// </summary>  
    public void Stop()  
    {  
      if (mCanAnimate)  
      {  
        lock (image)  
        {  
          ImageAnimator.StopAnimate(image, new EventHandler(FrameChanged));  
        }  
      }  
    }  
 
    /// <summary>  
    /// 重置動畫,使之停止在第0幀位置上。  
    /// </summary>  
    public void Reset()  
    {  
      if (mCanAnimate)  
      {  
        ImageAnimator.StopAnimate(image, new EventHandler(FrameChanged));  
        lock (image)  
        {  
          image.SelectActiveFrame(frameDimension, 0);  
          mCurrentFrame = 0;  
        }  
      }  
    }  
 
    private void FrameChanged(object sender, EventArgs e)  
    {  
      mCurrentFrame = mCurrentFrame + 1 >= mFrameCount &#63; 0 : mCurrentFrame + 1;  
      lock (image)  
      {  
        image.SelectActiveFrame(frameDimension, mCurrentFrame);  
      }  
      if (OnFrameChanged != null)  
      {  
        OnFrameChanged(image, e);  
      }  
    }  
  }  
}

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

當(dāng)前標(biāo)題:C#Winform中繪制動畫的方法-創(chuàng)新互聯(lián)
分享網(wǎng)址:http://aaarwkj.com/article4/ccoooe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供移動網(wǎng)站建設(shè)、網(wǎng)站改版、全網(wǎng)營銷推廣、用戶體驗App設(shè)計、面包屑導(dǎo)航

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都app開發(fā)公司
国产毛片精品一区内射| 欧美黄色日本一区二区| 在线观看免费国产b片| 亚洲免费黄色大片网站| 亚洲大尺码在线视频香蕉| 免费av不卡一区二区| 99久在线观看精品视频| 日本道视频一区二区三区| 要爽死国产一区在线播放| 人妻少妇中文字幕在线播放| 日韩av高清在线播放| 妇女人妻丰满少妇中文字幕| 日韩欧美国产麻豆91在线精品| 色欧美在线视频观看日韩| 亚洲黄色手机在线网站| 亚洲欧美一区二区中文字幕| 国产自拍免费在线观看视频| 91精彩啦在线看国产| 在线观看中文字幕不卡二区| 亚洲成人福利免费网站| 亚洲激情人妻小说网| 国产一区二区在线乱码| 麻豆国产传媒片在线看| 午夜精品一区二区三区亚洲| 国产精品成人av在线网站| 国内一级片内射免费视频观看| 日韩中文字幕乱码卡一| 国产成人综合在线观看网站| 欧美一区二区三区日| 男女性情视频免费大全网站| 亚洲av产在线精品亚洲第| 久久久久久国产综合精品| 欧美高清在线观看视频| 亚洲精品区免费观看av| 成人一区二区三区乱码| 国产一区二区在线粉嫩| 麻豆视频国产一区二区| 亚洲一区二区三区蜜桃av| 国内精品人妻久久毛片| 人妻有码中文字幕在线| 日韩欧美国产精品一区二区三区|