现在是一段一段的绘 ,对屏幕的刷新很大啊

解决方案 »

  1.   

    实现双缓冲的具体步骤:1、在内存中建立一块“虚拟画布”:Bitmap bmp = new Bitmap(600, 600);2、获取这块内存画布的Graphics引用:Graphics g = Graphics.FromImage(bmp);3、在这块内存画布上绘图:g.FillEllipse(brush, i * 10, j * 10, 10, 10);4、将内存画布画到窗口中this.CreateGraphics().DrawImage(bmp, 0, 0);总结怎么样?是不是很简单?但是正是这个简单的操作大大提高了绘图效率,所以如果你需要进行GDI+图形编程,双缓冲技术一定要掌握,特别是在进行大量图形绘制刷新的情况下要尽量采用。
      

  2.   

    2.0里直接用Graphics的双缓冲,否则用dyw31415926(守护) 的方法吧
      

  3.   

    Bitmap bmp=new Bitmap(180,180);
    Graphics g = Graphics.FromImage(bmp);
    g.SmoothingMode = SmoothingMode.AntiAlias;
    g.Clear(Color.White);
    //g.DrawImage();
    this.CreateGraphics().DrawImage(bmp, 0, 0);