2017-02-10 95 views
-2

我可以绘制拖放矩形,但拖放后,矩形的上一个副本仍然在其位置。我如何删除它?删除拖放矩形

namespace dragAndDropRect 
{ 
    public partial class Form1 : Form 
    { 
     public Form1() 
     { 
      InitializeComponent(); 
     } 

     private void Form1_MouseMove(object sender, MouseEventArgs e) 
     { 
      Graphics g = this.CreateGraphics(); 
      Rectangle rect = new Rectangle(30, 30, 30, 30); 
      g.FillRectangle(Brushes.Aqua, rect); 

      if (e.Button == MouseButtons.Left) 
      { 
       Refresh(); 
       g.FillRectangle(Brushes.AliceBlue, e.X, e.Y, 30, 30); 
      } 
     } 
    } 
} 

回答

0

首先处理旧矩形,然后创建一个新

namespace dragAndDropRect 
{ 
public partial class Form1 : Form 
{ 
    public Form1() 
    { 
     InitializeComponent(); 
    } 

    private void Form1_MouseMove(object sender, MouseEventArgs e) 
    { 
     Graphics g = this.CreateGraphics(); 
     Rectangle rect = new Rectangle(30, 30, 30, 30); 
     g.FillRectangle(Brushes.Aqua, rect); 

     if (e.Button == MouseButtons.Left) 
     { 
      Refresh(); 
      g.Invalidate(); 
      g.FillRectangle(Brushes.AliceBlue, e.X, e.Y, 30, 30); 
     } 
    } 
} 
} 
+0

g.invalidate();无效 –