提问者:小点点

在图片框C#中获取鼠标点击位置


我试图在图片框上获取鼠标点击坐标,并将信息放入文本框中。

我可以在表单中获取鼠标单击坐标,但无法在picturebox中获取鼠标坐标(当我在picturebox中单击时,不会发生任何事情)。我已经看过了stackoverflow类似问题的答案,但似乎没有什么对我有用。

这是我的完整代码:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace testGraphiqueCSharp
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        protected override void OnMouseClick(MouseEventArgs e)
        {
            base.OnMouseClick(e);
            textBox1.Text = e.X.ToString();
            textBox2.Text = e.Y.ToString();
        }

       private void pictureBox1_MouseUp(object sender, MouseEventArgs e)
        {
            textBox1.Text = e.X.ToString();
            textBox2.Text = e.Y.ToString();
            Console.WriteLine("mouse up");
        }
    }
}

共3个答案

匿名用户

private void pictureBox1_Click(object sender, EventArgs e)
{
    var mouseEventArgs = e as MouseEventArgs;
    if (mouseEventArgs != null) textBox1.Text = "X= " + mouseEventArgs.X + " Y= " + mouseEventArgs.Y;
}

匿名用户

当mouseup事件发生时,您已经调用了该函数。您应该调用该函数,当pictureboxclicked.try事件,如点击完成任务。

匿名用户