Autohotkey - defina uma tecla de atalho para alternar (script habilitado para desabilitar um buraco automático)

0

Oi eu costumava usar no início do meu script Autohotkey alternar entre desativá-lo totalmente e ativá-lo totalmente     scrolllock :: Pausa

mas não funciona mais, e eu percebi que, se eu configurá-lo, ele não me deixará definir variáveis. por exemplo,

scrolllock:: Pause
var := 29    ; <--- this var will not be set cuz the line above

Ele só será definido se eu remover a linha acima, eu testei.

Eu tentei mudar isso para ...

f12::
Pause
Suspend
return

mas não funciona com a tecla scrollock Eu acho que preciso definir um keystate

Como posso fazer isso, obrigado Advanced.

    
por litu16 21.11.2016 / 15:49

2 respostas

2

Este código nunca será executado

scrolllock:: Pause

var := 29 

F1:: MsgBox, %var%

porque você tenta definir uma variável entre teclas de atalho.

Uma variável deve ser definida na seção executável automática do script (parte superior do script, antes do primeiro retorno ou tecla de atalho)

; top of the script:
var := 29
    return      ; end of auto-execute section

scrolllock:: Pause

F1:: MsgBox, %var%

ou em uma tecla de atalho

scrolllock:: Pause

F1:: 
var := 29
MsgBox, %var%
return 

ou em uma função.

    
por 21.11.2016 / 16:40
0

One-liners AHK

Basta colocar Pause em uma nova linha e adicionar uma instrução return .

scrolllock:: Pause ; <-- Quick One-liner Script
    var := 29      ; <-- Not executed

scrolllock:: ; <-- Full Script
    Pause
    var := 29
    return   ; <-- Explicit return statement needed

Se você tiver código na primeira linha, o AHK assumirá que é um one-liner rápido e adicionará um retorno implícito no final. Então var := 29 depois que não será executado.

    
por 23.11.2016 / 19:18