📅  最后修改于: 2023-12-03 15:37:37.101000             🧑  作者: Mango
如果你是一位C#程序员,想要在应用程序中实现图形绘制,那么PictureBox是一个不错的选择。PictureBox是Windows Forms中的一个控件,允许你在应用程序窗体中显示一个图像。不仅如此,PictureBox还提供了一些方法来绘制各种图形对象。接下来,我们将通过一些示例来介绍如何在PictureBox上绘制C#。
首先,我们需要创建一个Windows Forms应用程序。打开Visual Studio,选择"新建项目",选择"Windows Forms应用程序",创建一个名为"DrawCSharp"的应用程序。
我们首先从绘制线条开始。在Form1.cs中,加入以下代码来绘制一个线条:
private void pictureBox1_Paint(object sender, PaintEventArgs e)
{
Pen pen = new Pen(Color.Black, 3);
e.Graphics.DrawLine(pen, new Point(50, 50), new Point(200, 200));
}
在PictureBox的Paint事件中,实例化一个Pen对象用来设置线条宽度和颜色。然后,使用Graphics对象的DrawLine方法在PictureBox上绘制一条直线。
接下来,让我们试着以同样的方式绘制一个矩形。在Form1.cs中,加入以下代码:
private void pictureBox1_Paint(object sender, PaintEventArgs e)
{
Pen pen = new Pen(Color.Black, 3);
e.Graphics.DrawLine(pen, new Point(50, 50), new Point(200, 200));
e.Graphics.DrawRectangle(pen, new Rectangle(100, 100, 100, 100));
}
这个代码与之前绘制直线的代码几乎相同,只有一行额外的代码:调用Graphics对象的DrawRectangle方法,传递一个矩形。
让我们再来尝试一下绘制椭圆。在Form1.cs中,加入以下代码:
private void pictureBox1_Paint(object sender, PaintEventArgs e)
{
Pen pen = new Pen(Color.Black, 3);
e.Graphics.DrawLine(pen, new Point(50, 50), new Point(200, 200));
e.Graphics.DrawRectangle(pen, new Rectangle(100, 100, 100, 100));
e.Graphics.DrawEllipse(pen, new Rectangle(250, 50, 100, 200));
}
这个代码和之前的代码几乎相同,只有一行额外的代码:调用Graphics对象的DrawEllipse方法,传递一个椭圆形状的矩形。
现在,我们来绘制一个多边形。在Form1.cs中,加入以下代码:
private void pictureBox1_Paint(object sender, PaintEventArgs e)
{
Pen pen = new Pen(Color.Black, 3);
e.Graphics.DrawLine(pen, new Point(50, 50), new Point(200, 200));
e.Graphics.DrawRectangle(pen, new Rectangle(100, 100, 100, 100));
e.Graphics.DrawEllipse(pen, new Rectangle(250, 50, 100, 200));
Point[] points = new Point[] {
new Point(400, 50),
new Point(450, 100),
new Point(400, 150),
new Point(350, 100),
};
e.Graphics.DrawPolygon(pen, points);
}
这个代码和之前的代码几乎相同,只有一行额外的代码:调用Graphics对象的DrawPolygon方法,传递多个点来构造多边形。
通过以上几个例子,我们可以使用PictureBox在C#中实现多种图形绘制。使用相同的方式,你还可以绘制曲线、圆弧等更为复杂的图形。开始绘制吧!