C#手工双缓冲技术用法实例分析
本文实例讲述了C#手工双缓冲技术。分享给大家供大家参考。具体如下:
usingSystem;
usingSystem.Collections.Generic;
usingSystem.ComponentModel;
usingSystem.Data;
usingSystem.Drawing;
usingSystem.Text;
usingSystem.Windows.Forms;
namespaceadvanced_drawing
{
publicpartialclassForm19:Form
{
BufferedGraphicsContextbufferContext;
Bitmapgif=newBitmap(@"d:/我的文档/桌面/ico/a.GIF");
publicForm19()
{
InitializeComponent();
bufferContext=newBufferedGraphicsContext();
bufferContext.MaximumBuffer=this.ClientRectangle.Size;
}
voidgif_FrameChanged(objectsender,EventArgse)
{
Graphicsg=this.CreateGraphics();
BufferedGraphicsframe=bufferContext.Allocate(g,this.ClientRectangle);
ImageAnimator.UpdateFrames(gif);
frame.Graphics.DrawImage(gif,this.ClientRectangle);
frame.Render();
}
privatevoidForm19_FormClosing(objectsender,FormClosingEventArgse)
{
bufferContext.Dispose();
}
privatevoidForm19_Paint(objectsender,PaintEventArgse)
{
if(ImageAnimator.CanAnimate(gif))
{
ImageAnimator.Animate(gif,gif_FrameChanged);
}
}
}
}
希望本文所述对大家的C#程序设计有所帮助。
热门推荐
10 儿子立冬祝福语简短独特
11 对当兵的祝福语简短
12 侄儿高考试祝福语简短
13 伴郎红包祝福语朋友简短
14 媳妇生日简短祝福语朋友
15 公司年会祝福语简短最好
16 元旦感恩祝福语简短大全
17 红包祝福语简短10字
18 周六早晨祝福语简短