C#使用坐标在picturebox控件上进行描点
时间: 2023-12-27 21:05:36 浏览: 212
在 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控件中的图像。
C#点击button控件通过获取坐标数据在picturebox控件图片上描点
要在PictureBox控件中的图像上描点,可以使用Graphics类的DrawEllipse方法。以下是用C#代码在PictureBox控件的图像上描点的示例:
```csharp
private void button1_Click(object sender, EventArgs e)
{
if (pictureBox1.Image != null)
{
// 获取PictureBox控件中的图像
Image img = pictureBox1.Image;
// 获取PictureBox控件的尺寸
int picWidth = pictureBox1.Width;
int picHeight = pictureBox1.Height;
// 获取按钮的坐标
int btnX = button1.Location.X;
int btnY = button1.Location.Y;
// 计算按钮在PictureBox控件中的位置
int picX = btnX - pictureBox1.Location.X;
int picY = btnY - pictureBox1.Location.Y;
// 计算图像上的坐标
float x = picX * img.Width / picWidth;
float y = picY * img.Height / picHeight;
// 用Graphics类的DrawEllipse方法在图像上描点
using (Graphics g = Graphics.FromImage(img))
{
g.DrawEllipse(Pens.Red, x, y, 2, 2);
}
// 更新PictureBox控件中的图像
pictureBox1.Image = img;
}
}
```
在上述代码中,button1_Click是Button控件的单击事件处理程序。当单击按钮时,首先检查PictureBox控件中是否加载了图像。然后,获取PictureBox控件的尺寸和按钮的坐标,并计算按钮在PictureBox控件中的位置。接下来,计算鼠标单击位置在图像上的坐标。最后,使用Graphics类的DrawEllipse方法在图像上描点,并更新PictureBox控件中的图像。
阅读全文