Enviar chave no AutoHotKey sem recursão

2

Eu quero sobrescrever F1 mas usar SHIFT + F1 como F1

Ok, o que isso significa? Eu quero sobrescrever F1 com meu comando AHK pessoal

F1::Run C:\..\foo.exe

Mas existem aplicativos onde eu preciso da tecla F1 padrão. Seria possível fazer algo como

+F1:: Send {F1} 

sem a recursão à minha primeira hotkey?
Em outras palavras: Envie uma chave sem acionar os atalhos existentes do AHK.

Espero que esteja claro o que estou pedindo! :)

    
por bablewa 01.10.2014 / 16:47

1 resposta

3

Você pode usar a diretiva #UseHook para conseguir isso.

#UseHook, On

F1::    
    ; Your code...
    msgBox, Code!
return

+F1::Send, {F1}

By default, hotkeys that use the keyboard hook cannot be triggered by means of the Send command.

Você pode ler mais sobre exatamente o que faz aqui: link

Se você quiser apenas este efeito em certas teclas, você pode omitir #UseHook e, em vez disso, prefixo suas chaves com um símbolo $ .

Você pode ler mais sobre o prefixo em dólar aqui: link

$F1::    
    ; Your code...
    msgBox, Code!
return

+F1::Send, {F1}
    
por 01.10.2014 / 16:53

Tags