2009-06-29 2 views
0

Я работаю над приложением WinForms и должен записывать местоположение событий MouseDown и MouseUp. Моя проблема в том, что события происходят на разных элементах управления, поэтому их системы координат не совпадают (все, что мне нужно, это количество перетаскивания). Я попытался добавить в местоположение передающего элемента управления, но он все еще не работает правильно.Как получить глобальное местоположение от MouseDown?

Есть ли простое решение?

ответ

4

Вы можете использовать метод PointToScreen для этой цели. Мышь код обработчика может выглядеть следующим образом:

private void Form1_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e) 
{ 
    Control control = (Control) sender; 
    Point pointOnScreen = control.PointToScreen(new Point(e.X, e.Y)); 

    ... 
} 
+0

Это, кажется, делать то, что я хочу, но я до сих пор есть проблемы ... в остальной части кода: б – BCS

+0

Каковы эти проблемы? –

 Смежные вопросы

  • Нет связанных вопросов^_^