2015-04-21 3 views
3

Я могу получить позицию мыши, когда она находится в форме. Вот мой код:Позиция указателя мыши, когда указатель не находится на winform

private void Form1_MouseMove(object sender, MouseEventArgs e) 
{ 
    lblXPosition.Text = MousePosition.X.ToString(); 
    lblYPosition.Text = MousePosition.Y.ToString(); 
} 

Но это не работает, если указатель находится вне формы. Любое предложение?

ответ

5

Вы можете сделать это несколькими другими способами. Вот быстрый и простой способ:

private void timer1_Tick(object sender, EventArgs e) 
{ 
    lblXPosition.Text = MousePosition.X.ToString(); 
    lblYPosition.Text = MousePosition.Y.ToString(); 
} 

Таймер интервала времени 500 достаточно хорошо, чтобы выполнить эту работу. Он работает, даже если ваш указатель находится вне формы.

+0

Спасибо, он работает. –

+0

Действительно, @ s.k.paul, CodeIt использовал использование события MouseMove формы 1, которое ограничено формой1 и, следовательно, не будет работать, если мышь находится вне формы1. Отображение позиции на любом другом глобальном мероприятии было трюком для этого. –

+0

@SivaSenthil - Это решение работает для меня в этом случае. –