小弟C# 新手,用C# 划线时画出来了,那我如何才能让刚才画的线消失呢?代码如下
private void Form1_Paint(object sender, PaintEventArgs e)
{
Graphics g = this.CreateGraphics();
Pen p = new Pen(Color.Green, 1);
g.DrawLine(p,20, 650, 20, 50);
g.DrawLine(p, 20, 50, 1020, 50);
g.DrawLine(p, 1020, 50, 1020, 650);
g.DrawLine(p, 20, 650, 1020, 650);
g.Dispose();
p.Dispose();
}
private void Form1_Paint(object sender, PaintEventArgs e)
{
Graphics g = this.CreateGraphics();
Pen p = new Pen(Color.Green, 1);
g.DrawLine(p,20, 650, 20, 50);
g.DrawLine(p, 20, 50, 1020, 50);
g.DrawLine(p, 1020, 50, 1020, 650);
g.DrawLine(p, 20, 650, 1020, 650);
g.Dispose();
p.Dispose();
}
Pen p = new Pen(Color.Green, 1);
g.DrawLine(p, 20, 650, 20, 50);
g.DrawLine(p, 20, 50, 1020, 50);
g.DrawLine(p, 1020, 50, 1020, 650);
g.DrawLine(p, 20, 650, 1020, 650);
g.Clear(this.BackColor);//清除
g.Dispose();
p.Dispose();
int a = 0;
private void button3_Click(object sender, EventArgs e)
{
a++;
this.Refresh();
} private void Form1_Paint(object sender, PaintEventArgs e)
{
if (a%2==0)
{
Graphics g = this.CreateGraphics();
Pen p = new Pen(Color.Green, 1);
g.DrawLine(p, 20, 650, 20, 50);
g.DrawLine(p, 20, 50, 1020, 50);
g.DrawLine(p, 1020, 50, 1020, 650);
g.DrawLine(p, 20, 650, 1020, 650);
g.Dispose();
p.Dispose();
}
}
1楼正解