1 (изменено: terra-4, 2017-06-01 22:35:56)

Тема: AHK: Блокировка передвижения мышки по оси ХY при нажатой кнопк[Решено]

Здравствуйте.
Иногда при нажатии ЛКМ да и ПКМ, происходит ненужное перемещение мышки, увидел на форуме скрипт "AHK: Блокировка передвижения мышки по оси Х при нажатой кнопке"

   SetBatchLines, -1
   SetMouseDelay, -1
   CoordMode, Mouse
   OnExit, Exit

   hHook := DllCall("SetWindowsHookEx"
      , Int, WH_MOUSE_LL := 14
      , Int, RegisterCallback("LowLevelMouseProc", "Fast")
      , UInt, DllCall("GetModuleHandle", UInt, 0)
      , UInt, 0)
   Return

Exit:
   DllCall("UnhookWindowsHookEx", UInt, hHook)
   ExitApp
   
~vk5A::	;z
;~LButton::
   MouseGetPos,, y_prev
   Direction = horizontal
   MouseGetPos, x_prev
   Direction = vertical
   Return

~vk5A Up::   Direction =	;z

LowLevelMouseProc(nCode, wParam, lParam)
{
   global Direction, x_prev, y_prev

   if (nCode < 0 || !Direction || wParam != 0x200)   ; WM_MOUSEMOVE = 0x200
      Return DllCall("CallNextHookEx", UInt, 0, Int, nCode, UInt, wParam, UInt, lParam)

   if Direction = horizontal
      x := NumGet(lParam+0), y := y_prev

   if Direction = vertical
      y := NumGet(lParam+0, 4), x := x_prev

   ;MouseMove, x, y, 0
   Return 1
}
!1::ExitApp
!2::Pause

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

2 (изменено: svoboden, 2017-06-01 22:07:15)

Re: AHK: Блокировка передвижения мышки по оси ХY при нажатой кнопк[Решено]

Вместо кнопки "z", поставь "~LButton", а вместо "Pause", поставь "Suspend".

3

Re: AHK: Блокировка передвижения мышки по оси ХY при нажатой кнопк[Решено]

svoboden, Спасибо, пауза теперь работает.
С
~LButton::
~RButton::
курсор при отпускании ЛКМ, ПКМ, не возвращается, приходится закрывать скрипт.

4 (изменено: svoboden, 2017-07-24 19:02:26)

Re: AHK: Блокировка передвижения мышки по оси ХY при нажатой кнопк[Решено]

"~LButton Up" напиши еще.