Как определить, удерживается ли левая кнопка мыши в событии OnMouseMove
для элемента управления?
Посмотрите, удерживается ли левая кнопка мыши в событии OnMouseMove.
comment
на какой платформе? решение отличается для WinForms, Silverlight и WPF и т. д.
- person Muad'Dib   schedule 02.02.2010
Ответы (2)
Ваш обработчик событий для события OnMouseMove должен получить MouseEventArgs
, который должен сообщить вам, нажата ли левая кнопка.
private void mouseMoveEventHandler(object sender, MouseEventArgs e)
{
if(e.Button == MouseButtons.Left)
{
//do left stuff
}
else
{
// do other stuff
}
}
person
Nifle
schedule
02.02.2010
Просто установите логическое значение в значение true, когда левая кнопка мыши удерживается, и установите его в значение false, когда оно будет отпущено.
Если вы проверите состояние логического значения при запуске события OnMouseMove, вы сможете узнать, удерживается ли оно нажатым или нет.
Псевдокод:
private bool isDown;
MouseDown()
{
isDown = true;
}
MouseUp()
{
isDown = false;
}
OnMouseMove()
{
if(isDown)
{
//Do something...
}
}
person
Jamie Keeling
schedule
02.02.2010