1

Тема: AHK включение выключение одной кнопкой (тугл?)

Вобщем есть такой код:

$*MButton::
Loop 
   { 
      Sleep 90 
      GetKeyState, szButtonState, MButton, P 
      if szButtonState = U 
         break 
      MouseClick, left,,, 1, 0, D 
      Sleep, 20 
      MouseClick, left,,, 1, 0, U 
      DllCall("mouse_event", uint, 1, int, 0, int, 2, uint,0, int,0 ) 
   } 
return

Подскажите пожалуйста, как сделать так, чтобы MButton включала\выключала нижний код (левая кнопка выполняет свою функцию, но при нажатии MButton, левая кнопка выполняла скрипт, при повторном нажатии MButton левая кнопка опять начала выполнять свою функцию ).

$*LButton::
Loop 
   { 
      Sleep 90 
      GetKeyState, szButtonState, LButton, P 
      if szButtonState = U 
         break 
      MouseClick, left,,, 1, 0, D 
      Sleep, 20 
      MouseClick, left,,, 1, 0, U 
      DllCall("mouse_event", uint, 1, int, 0, int, 2, uint,0, int,0 ) 
   } 
return

2

Re: AHK включение выключение одной кнопкой (тугл?)

Так как-нибудь:

*MButton::
Hotkey, *LButton, LButton, % (i := !i) ? "On" : "Off"
Loop 
   { 
      Sleep 90 
      GetKeyState, szButtonState, MButton, P 
      if szButtonState = U 
         break 
      MouseClick, left,,, 1, 0, D 
      Sleep, 20 
      MouseClick, left,,, 1, 0, U 
      DllCall("mouse_event", uint, 1, int, 0, int, 2, uint,0, int,0 ) 
   } 
return

LButton:
Loop 
   { 
      Sleep 90 
      GetKeyState, szButtonState, LButton, P 
      if szButtonState = U 
         break 
      MouseClick, left,,, 1, 0, D 
      Sleep, 20 
      MouseClick, left,,, 1, 0, U 
      DllCall("mouse_event", uint, 1, int, 0, int, 2, uint,0, int,0 ) 
   } 
return
Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder