gpt4 book ai didi

c# - 从不同的类绘制到 Windows 窗体中的图片框

转载 作者:太空狗 更新时间:2023-10-30 01:21:32 27 4
gpt4 key购买 nike

在我的代码中,我有一个带有背景图片的PictureBox。我曾经使用

在它上面画一个矩形
private void pictureBox1_Paint(object sender, PaintEventArgs e)
{
Pen p = new Pen(Color.Turquoise, 2);
Rectangle r = new Rectangle(600, 300, 5, 5);
e.Graphics.DrawRectangle(p, r);
p.Dispose();
}

现在,我知道我需要对这些矩形做很多事情并动态创建它们,我已经为它们创建了一个类,其构造函数如下所示:

public MyRectangles(int x, int y)
{
Pen p = new Pen(Color.Turquoise, 2);
Rectangle r = new Rectangle(x, y, 5, 5);
e.Graphics.DrawRectangle(p, r);
p.Dispose();
}

问题是,e.Graphics.DrawRectangle(p, r); 中的 e 在这里不存在。这是有道理的,我明白为什么,但是,我不知道用什么来代替它,再次在同一个图片框上绘制。

最佳答案

尝试传递图形对象:

public MyRectangles(Graphics g, int x, int y)
{
Pen p = new Pen(Color.Turquoise, 2);
Rectangle r = new Rectangle(x, y, 5, 5);
g.DrawRectangle(p, r);
p.Dispose();
}

关于c# - 从不同的类绘制到 Windows 窗体中的图片框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15299145/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com