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#程序设计有所帮助。
热门推荐
6 保研的祝福语简短
10 年轻20岁祝福语简短
11 朋友结婚祝福语信息简短
12 女孩婚礼贺卡祝福语简短
13 30段点歌简短祝福语
14 虎年春节祝福语图文简短
15 写给后妈祝福语大全简短
16 简短回复生日祝福语
17 校长送毕业祝福语简短
18 毕业立体贺卡祝福语简短