C# winform如何清除由Graphics类绘制出来的所有线条或图形

时间:2021-06-23 02:00:45

在C#winform应用程序中,可以用GDI绘制出线条或图形。

1、在主窗体上绘制线条或图形

using (Graphics g = this.CreateGraphics())
      {
            g.DrawLine(Pens.Blue, new Point(10, 10), new Point(100, 100));
      }

2、在指定的容器上绘制线条或图形,如在panel1上绘制

using (Graphics g = this.panel1.CreateGraphics())
     {
            g.DrawLine(Pens.Blue, new Point(10, 10), new Point(100, 100));
     }

但是有时想要清除当前窗体中的由GDI绘制出来的所有线条或图形时,可以用下面的方法清除。

  Graphics g= this.pic_Img.CreateGraphics();
  g.Clear(this.pic_Img.BackColor);
  g.Dispose();//释放资源

g.Clear()函数是指用指定的颜色重绘窗体的背景,Clear函数中的参数就是要绘制的颜色,当参数设置为this.BackColor时,也就是当前窗体的背景颜色,就可以达到清除当前窗体中所有由GDI绘制出来的所有线条或图形了。