2013-08-22 3 views
1

Как я могу вызвать событие, если мышь не перемещается, в приложении WPF с использованием C#?Как вызвать событие, когда мышь не перемещается?

+2

использовать таймер и галочку для позиции мыши, я не думаю, что есть событие – Sayse

+1

Мышь не двигается в течение какого времени? –

+3

Отслеживайте его, когда он * движется, имеет какой-то штамп, представляющий время последнего перемещения мыши, а затем, если это происходит над определенным порогом, поднимите событие? –

ответ

1

Я решил, что добавлю псевдокодную версию того, как использовать таймер (не получить визуальную студию на этом компьютере, можно обновить ее позже).

private Point lastPos; 
public Timer_tick(s,e) 
{ 
    if(mousePosition != lastPos) 
    { 
     MouseHasntMoved(); 
     timer.Stop(); 
    } 
} 
public override MouseMove(s,e) 
{ 
    timer.Reset(); 
    lastPos = mousePosition; 
} 
public void MouseHasntMoved() 
{ 
//Do something 
} 
+0

Спасибо за ответ. Я нашел более простой ответ [здесь] (http://stackoverflow.com/questions/13216890/wpf-event-that-triggers-after-the-mouse-stops-movinm). –

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