C#学习笔记(8)——
C#下采用双缓冲技术进行GDI+绘图的方法
为了防止绘制大量的图元后,刷新频率较高的情况下,出现闪烁的情况,需要使用双缓冲技术来解决该问题。具体步骤: 1:在内存中创建BitMap; 2:再从指定的BitMap中创建一个Graphics对象; 3:最主要的是:g.Clear(this.BackColor),清除内存; 4:绘制图形; 5:将内存中的图形复制到屏幕上;
为了防止绘制大量的图元后,刷新频率较高的情况下,出现闪烁的情况,需要使用双缓冲技术来解决该问题。具体步骤: 1:在内存中创建BitMap; 2:再从指定的BitMap中创建一个Graphics对象; 3:最主要的是:g.Clear(this.BackColor),清除内存; 4:绘制图形; 5:将内存中的图形复制到屏幕上;
具体代码如下:
private void Draw()
{
Bitmap bmp = new Bitmap(600, 600);
Graphics g = Graphics.FromImage(bmp);
g.Clear(this.BackColor);
Pen pen = new Pen(Color.Lime);
pen.Width = 2.0F;
g.DrawRectangle(pen, 1, ss, 50, 50);
this.CreateGraphics().DrawImage(bmp, 0, 0);
}
timer中调用Draw();