在画矩形前把图象保存,画完后再重新装入这个方法
这是最好的方法!!!
====================================================================
还有一种方法
把绘制方法设为异或(也叫位加:Xor):DrawMode设为VbXorPen
再绘制一次同样的图像会恢复(最好用白色,这样效果比较明显)
DrawMode 属性
      返回或设置一个值,以决定图形方法的输出外观或者 Shape 及 Line 控件的外观。语法object.DrawMode [= number]DrawMode 属性语法包含下面部分:部分 描述 
object 对象表达式,其值是“应用于”列表中的一个对象。 
Number 整型值,指定外观,“设置值”中有详细描述。 
设置值number 的设置值为:常数 设置值 描述 
VbBlackness 1 黑色。 
VbNotMergePen 2 非或笔 - 与设置值 15 相反 (Merge Pen)。 
VbMaskNotPen 3 与非笔 - 背景色以及画笔反相二者共有颜色的组合。 
VbNotCopyPen 4 非复制笔 - 设置值 13 (Copy Pen) 的反相 
VbMaskPenNot 5 与笔非 - 画笔以及显示反相二者共有颜色的组合。 
VbInvert 6 反转 - 显示颜色的反相 
VbXorPen 7 异或笔 - 画笔的颜色以及显示颜色的组合,只取其一。 
VbNotMaskPen 8 非与笔 - 设置值 9 (Mask Pen) 的反相。 
VbMaskPen 9 与笔 - 画笔和显示二者共有颜色的组合。 
VbNotXorPen 10 非异或笔 - 方式 7 的反相 (Xor Pen)。  
VbNop 11 无操作 - 输出保持不变。该设置实际上关闭画图。 
VbMergeNotPen 12 或非笔 - 显示颜色与画笔颜色反相的组合。 
VbCopyPen 13 复制笔(缺省值) - 由 ForeColor 属性指定的颜色。 
VbMergePenNot 14 或笔非 - 画笔颜色与显示颜色的反相的组合。 
VbMergePen 15 或笔 - 画笔颜色与显示颜色的组合。 
VbWhiteness 16 白色。 
说明当用 Shape 或 Line 控件,或者用图形方法画图时,使用这个属性产生可视效果。Visual Basic 将绘图模式的每一个像素与现存背景色中相应的像素做比较,然后进行逐位比较操作。例如,设置值 7(异或笔)用 Xor 操作符将绘图模式像素和背景像素组合起来。DrawMode 设置值的真正效果,取决于运行时所画线的颜色与屏幕已存在颜色的合成。对于设置值 1,6,7,11,13 和 16 可以最可靠地预知该属性的输出结果。DrawMode 属性示例
这个例子允许通过拖动鼠标在窗体上画图。每单击一次鼠标为 DrawMode 属性设置一个不同的值。要试用此例,先把代码粘贴到窗体的声明部分,然后按 F5 键,并单击窗体。Private Sub Form_Load
   DrawWidth = 10   ' 设置 DrawWidth.
End Sub
Private Sub Form_Click ()
   Static M As Integer   ' 当前 DrawMode 的设置值.
   ForeColor = QBColor(Int(Rnd * 15))   ' 选择一种颜色.
   M = ((M + 1) Mod 16) + 1   ' 使 DrawMode 小于或等于 16.
   DrawMode = M   ' 设置 DrawMode.
End Sub
Private Sub Form_MouseMove (Button As Integer, Shift As Integer, X As Single, Y As Single)
   If Button Then   ' 当按钮被按下时,
      PSet (X, Y)   ' 画一个大点.
   End If
End Sub