получить позицию картинки, которая была нажата - PullRequest
1 голос
/ 08 марта 2011

Я хочу получить позицию картинки, которая была нажата мышью, но я не знаю как ?? Я имею в виду положение Picturebox, а не форму, которая на нем. Благодарю.

Ответы [ 2 ]

4 голосов
/ 08 марта 2011

Муган близок. Точка, которую вы получите от MouseEventArgs, - это «экранная» точка мыши, где 0,0 - верхний левый угол всего монитора или рабочего стола (как бы вы ни думали об этом). Чтобы преобразовать это в «клиентскую» точку в элементе управления PictureBox, где 0,0 - верхний левый угол этого PictureBox, вам нужно использовать метод Control.PointToClient ():

private void pb_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e) 
{
    Point mouseDownLocation = (Control)sender.PointToClient(new Point(e.X, e.Y));
    //here goes your if condition ...
}
1 голос
/ 08 марта 2011
private void pb_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e) 
{
    Point mouseDownLocation = new Point(e.X, e.Y);
    //here goes your if condition ...
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...