切换模拟按键(通过两个不同的键)

时间:2014-01-07 00:28:47

标签: autoit

  • 我需要这样做,以便我可以按HotKeySet("{F10}", "stopctrl")(当我按 F10 时, LCTRL 应该停止发送)。
  • 当我按 F9 时,应发送 LCTRL
  • 如果按 ESC ,程序应退出。

我有什么方法可以同时添加这两个功能吗?

HotKeySet("{F9}", "startctrl")

Func startctrl()
    Send("{LCTRL down}")
EndFunc

HotKeySet("{ESC}", "Terminate") 

Func Terminate()
    Exit
EndFunc

2 个答案:

答案 0 :(得分:1)

ESC 是一个特殊的密钥,不要使用它。

F9 开始和停止推送 CTRL

F10 停止程序

HotKeySet("{F9}", "_startandstop")
HotKeySet("^{F9}", "_startandstop")
HotKeySet("{F10}", "_exit")
HotKeySet("^{F10}", "_exit")

$isdown = False;

while 1
    Sleep(500)
WEnd

Func _startandstop()
    if ($isdown) Then
        ConsoleWrite("up ausgeführt")
        Send("{CTRLUP}")
        $isdown = False
    Else
        ConsoleWrite("down ausgeführt")
        Send("{CTRLDOWN}")
        $isdown = True
    EndIf
EndFunc

Func _exit()
    If ($isdown) Then
        Send("{CTRLUP}")
    EndIf
    ConsoleWrite("exit ausgeführt")
    Exit 1
EndFunc

Lg Teifun2

答案 1 :(得分:-1)

HotKeySet("{F9}", "startctrl")
HotKeySet("^{F10}", "stopctrl")

HotKeySet("^{ESC}", "Terminate") 
HotKeySet("{ESC}", "Terminate") 

Func startctrl()
    Send("{LCTRL down}")
EndFunc

Func stopctrl()
    Send("{LCTRL up}")
EndFunc

Func Terminate()
    stopctrl()
    Exit
EndFunc