如何从图片框中擦除在绘制事件中绘制的矩形? C#

时间:2018-12-05 18:04:00

标签: c#

我知道对此有很多疑问,但我无法使其正常工作。我有这个活动:

private void button1_Click(object sender, EventArgs e)
    {
        //here are some examples of what I have tried
        pictureBox1.Invalidate();
        Invalidate();
    }

它可以正常工作。在我放入图片框的图像上方绘制一个彩色矩形。但是,在绘制该矩形之后,我要删除它。我基本上将其用作裁剪图像的选择区域。有没有一种方法可以擦除绘制的矩形?谢谢。

在这里我要删除矩形:

{{1}}

1 个答案:

答案 0 :(得分:0)

您的Paint例程调用了DrawRectangle。然后,您使矩形无效。到那时,您的绘制例程将再次被调用,并且,如果您绘制矩形的代码仍然存在,它将被重绘。您需要这样做,以使DrawRectangle调用在不再需要时(使用if语句等)不再被调用。

您可能还想将无效矩形的大小增加一个像素,以确保您不会留下面包屑

相关问题