В обработчике кликов выполните:
MousePosition.X
MousePosition.Y
Добавить пример:
//
// pictureBox1 Init
//
this.pictureBox1.Location = new System.Drawing.Point(1, 1);
this.pictureBox1.Name = "pictureBox1";
this.pictureBox1.Size = new System.Drawing.Size(100, 100);
this.pictureBox1.Click += new System.EventHandler(this.pictureBox1_Click);
..........................................
private void pictureBox1_Click(object sender, EventArgs e)
{
MessageBox.Show(string.Format("X: {0} Y: {1}", MousePosition.X, MousePosition.Y));
}
Показывает: "X: 537 Y: 946"
Еще одна вещь:
MouseEventArgs с координатами получают только MouseUp и MouseDown.
MouseClick не может получить ваши сообщения, потому что щелчок состоит из MouseUp и MouseDown, и оба могут иметь разные координаты.
Еще одно решение (подумайте лучше)
private int X;
private int Y;
private void pictureBox1_Click(object sender, EventArgs e)
{
MessageBox.Show(string.Format("X: {0} Y: {1}", X, Y));
}
private void pictureBox1_MouseUp(object sender, MouseEventArgs e)
{
X = e.X;
Y = e.Y;
}