程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> C#手工雙緩沖技巧用法實例剖析

C#手工雙緩沖技巧用法實例剖析

編輯:C#入門知識

C#手工雙緩沖技巧用法實例剖析。本站提示廣大學習愛好者:(C#手工雙緩沖技巧用法實例剖析)文章只能為提供參考,不一定能成為您想要的結果。以下是C#手工雙緩沖技巧用法實例剖析正文


本文實例講述了C#手工雙緩沖技巧。分享給年夜家供年夜家參考。詳細以下:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace advanced_drawing
{
  public partial class Form19 : Form
  {
    BufferedGraphicsContext bufferContext;
    Bitmap gif = new Bitmap(@"d:/我的文檔/桌面/ico/a.GIF");
    public Form19()
    {
      InitializeComponent();
      bufferContext = new BufferedGraphicsContext();
      bufferContext.MaximumBuffer = this.ClientRectangle.Size;
    }
    void gif_FrameChanged(object sender, EventArgs e)
    {
      Graphics g = this.CreateGraphics();
      BufferedGraphics frame = bufferContext.Allocate(g, this.ClientRectangle);
      ImageAnimator.UpdateFrames(gif);
      frame.Graphics.DrawImage(gif, this.ClientRectangle);
      frame.Render();
    }
    private void Form19_FormClosing(object sender, FormClosingEventArgs e)
    {
      bufferContext.Dispose();
    }
    private void Form19_Paint(object sender, PaintEventArgs e)
    {
      if (ImageAnimator.CanAnimate(gif))
      {
        ImageAnimator.Animate(gif, gif_FrameChanged);
      }
    }
  }
}

願望本文所述對年夜家的C#法式設計有所贊助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved