我正在尝试在Rectangle
上绘制PictureBox
,但当我点击其他位置时,Rectangle
会移动到新位置。我想保留原始Rectangle
并在给定坐标处绘制新的Rectangle
。
private void PictureBox_Paint(...)
Pen pen = new Pen(Color.Red, 3);
Rectangle rect = new Rectangle(x - 20, y - 10, 40, 20);
e.Graphics.DrawRectangle(pen, rect);
答案 0 :(得分:3)
您需要将矩形添加到矩形列表中。
要做到这一点,只需替换:
<强>的OnClick 强>
Rectangle rect = new Rectangle(x - 20, y - 10, 40, 20);
<强>绘图强>
e.Graphics.DrawRectangle(pen, rect);
使用:
<强>的OnClick 强>
myRectangleCollection.Add(new Rectangle(x - 20, y - 10, 40, 20));
<强>绘图强>
foreach(Rectangle rect in myRectangleCollection)
{
e.Graphics.DrawRectangle(pen, rect);
}
请不要忘记在表格初始化中初始化您的矩形列表:
List<Rectangle> myRectangleCollection = new List<Rectangle>();