Тема: AHK: Возможность вкл/выкл блокировки ввода с клавиатуры
Есть код в коллекции:Блокировка ввода с клавиатуры для указанного окна, но мне нужно приостановить его работу по нажатию кнопки.
#Persistent
Gui, add, edit, vblblbl
l:=0
Gui,add,Button, gLock, вкл/выкл
Gui,show, w200 h200,Окно
WinTtl=Окно
Return
Lock:
{
if l=1
{
SendEvent, {vkFF}
l:=0
}
else if l=0
{
SetTimer, BlockKbd, 100
l:=1
}
}
return
BlockKbd:
SetTimer, BlockKbd, Off
Loop
{
WinWaitActive, %WinTtl%
SetTimer, UnBlockKbd, 100
Input, InputKeys,, {vkFF}
}
Return
UnBlockKbd:
SetTimer, UnBlockKbd, Off
WinWaitNotActive, %WinTtl%
SendEvent, {vkFF}
Return
F10::ExitApp
Guiclose:
ExitApp
Работает как-то одноразово, ну решил:"Нужно проверять значение переменной l"
#Persistent
WinTtl=Окно
SetTimer, BlockKbd, 100
Gui, add, edit, vblblbl
l:=0
Gui,add,Button, gLock, вкл/выкл
Gui,show, w200 h200,Окно
Return
Lock:
{
if l=1
l:=0
else if l=0
l:=1
}
return
BlockKbd:
SetTimer, BlockKbd, Off
Loop
{
WinWaitActive, %WinTtl%
SetTimer, UnBlockKbd, 100
if l=1
SetTimer, UnBlockKbd, 100
else
Input, InputKeys,, {vkFF}
}
Return
UnBlockKbd:
SetTimer, UnBlockKbd, Off
Loop
{
if l=0
SendEvent, {vkFF}
else ifWinNotActive, %WinTtl%
SendEvent, {vkFF}
}
Return
F10::ExitApp
Guiclose:
ExitApp
Как сделать, чтобы можно было вкл/выкл возможность скрипта блокировать ввод?