This link содержит полезную информацию о том, как использовать функцию mouse_event, расположенной в user32.dllГоризонтальная прокрутка с C#
Основываясь на этой ссылке, которую я знаю, что я мог бы прокручивать делать что-то вроде:
[DllImport("user32.dll")]
public static extern void mouse_event(int dwFlags, int dx, int dy, int dwData, int dwExtraInfo);
public void Scroll(){
// this will cause a vertical scroll
mouse_event(0x0800, 0, 0, 500, 0);
}
public void Click(){
// this will cause a left mouse click
mouse_event(0x0002, 0, 0, 0, 0);
Thread.Sleep(1);
mouse_event(0x0004, 0, 0, 0, 0);
}
// etc...
Любом если вы посмотрите на эту ссылку, она не содержит значения int для MOUSEEVENTF_HWHEEL. Я хотел бы иметь возможность использовать горизонтальный свиток. Как я могу использовать move_event для создания движения горизонтального колеса?
Ове благодарит за помощь. Я вижу, что метод sendInput имеет гораздо большую функциональность. Единственный метод, который мне не хватало, - это колчан. должен ли я использовать sendInput вместо этого и перенести все жесты мыши, которые у меня были с этим? –
Я бы сказал, это зависит от того, сколько работы вам нужно сделать. Если бы я был вами, я бы переключился на SendInput, потому что лучше не использовать замененные функции. Возможно, в какой-то будущей версии Windows mouse_event больше не будет работать. Кроме того, взгляните на [этот поток] (http://social.msdn.microsoft.com/Forums/en-US/winforms/thread/4f705f47-af2a-4491-b241-ee38ca1aa3a6/) – Ove
Я постараюсь измените его, если это будет много неприятностей, тогда я оставлю его как есть. спасибо за помощь снова. –