C#picturebox控件上根据坐标进行连线
时间: 2023-07-12 10:27:42 浏览: 81
要在C#的PictureBox控件上根据坐标进行连线,可以使用Graphics对象的DrawLine方法。以下是一个简单的示例代码:
```csharp
private void pictureBox1_Paint(object sender, PaintEventArgs e)
{
// 创建Graphics对象
Graphics g = e.Graphics;
// 定义两个点的坐标
Point point1 = new Point(10, 10);
Point point2 = new Point(100, 100);
// 用红色画笔绘制一条线段
Pen pen = new Pen(Color.Red, 3);
g.DrawLine(pen, point1, point2);
}
```
在这个示例中,我们在PictureBox控件的Paint事件中获取Graphics对象,然后使用DrawLine方法绘制一条从(10, 10)到(100, 100)的红色线段。
你可以根据自己的需要修改坐标和线段颜色、宽度等参数。
相关问题
C#使用坐标在picturebox控件上进行描点
在 C# 中,在 PictureBox 控件上进行描点,可以通过以下步骤实现:
1. 在 PictureBox 控件的 Paint 事件中,获取 Graphics 对象。
2. 使用 Graphics 对象的 DrawLine 或 DrawRectangle 等方法绘制点或其他形状。
3. 最后通过 PictureBox 控件的 Invalidate 方法刷新绘图。
以下是一个示例代码:
```
private void pictureBox1_Paint(object sender, PaintEventArgs e)
{
// 获取 Graphics 对象
Graphics g = e.Graphics;
// 绘制点
Pen pen = new Pen(Color.Red);
g.DrawRectangle(pen, new Rectangle(10, 10, 2, 2));
// 刷新绘图
pictureBox1.Invalidate();
}
```
在上面的代码中,我们使用 DrawRectangle 方法绘制一个 2x2 的红色矩形,代表一个点。最后,通过调用 Invalidate 方法刷新绘图,使其生效。
C#通过坐标在picturebox控件图片上描点
要在PictureBox控件中的图像上绘制点,可以使用Graphics类的DrawEllipse方法。以下是用C#代码在PictureBox控件的图像上描点的示例:
```csharp
private void pictureBox1_MouseClick(object sender, MouseEventArgs e)
{
if (pictureBox1.Image != null)
{
// 获取PictureBox控件中的图像
Image img = pictureBox1.Image;
// 计算图像上的坐标
float x = e.X * img.Width / pictureBox1.Width;
float y = e.Y * img.Height / pictureBox1.Height;
// 用Graphics类的DrawEllipse方法在图像上描点
using (Graphics g = Graphics.FromImage(img))
{
g.DrawEllipse(Pens.Red, x, y, 2, 2);
}
// 更新PictureBox控件中的图像
pictureBox1.Image = img;
}
}
```
在上述代码中,pictureBox1_MouseClick是PictureBox控件的鼠标单击事件处理程序。当鼠标单击PictureBox控件时,首先检查控件中是否加载了图像。然后,计算鼠标单击位置在图像上的坐标。最后,使用Graphics类的DrawEllipse方法在图像上描点,并更新PictureBox控件中的图像。