PaintBox上原先画有很多连线,现在要求只清除指定部分的连线,并且不通过PaintBox.Repaint的方法实现,且PaintBox带有背景图片(即并非单色),请教各位该怎么实现?

解决方案 »

  1.   

    如果你想清除指定部分(我指的是区域)内的连线,那么可以用CANVAS.FILLRECT就可以啦,当然在这之前你须要设定CANVAS.BRUSH的颜色
    如果你想清除指定部分(我指的是具体某个线条)的线条或者是鼠标当前位置最接近的线条,那么你可以在划线的时候记住两点的位置,那么在你想删除的时候异或一下画线就可以啦
      

  2.   

    支持楼上的,就是画线的时候总是 Canvas.Pen.Mode := pmXor;
      

  3.   

    这样好象只对单色背景的PaintBox有效,对IMAGE背景的不行!
    不知道是不是可以帖出例程?