Eu quero criar um script AutoHotKey que aguarde uma janela e envie alguns toques de tecla, mas os pressionamentos de tecla estão se repetindo por padrão

5

Eu quero um script AutoHotKey que aguarde uma janela específica e, em seguida, envia pressionamentos de teclas a essa janela. No entanto, como a espera é feita em um loop, as chaves são enviadas novamente e novamente.

Digamos que eu queira esperar pela Calculadora do Windows e enviar "12345" para ela. Minha primeira tentativa foi:

#SingleInstance force
Loop
{
WinWaitActive, Calc
{
    Send, 12345
}

Esse script obviamente envia "12345" várias vezes, já que não estou saindo do loop.

Se eu inserir um "intervalo" após a instrução de envio, o loop terminará, assim como o script inteiro.

Qual é o padrão padrão para lidar com isso?

    
por Robert 15.08.2012 / 00:18

1 resposta

4

Suponho que você queira parar de enviar 12345 até que você ative a janela novamente (ou outra janela com o mesmo nome). Portanto, use WinWaitNotActive

#SingleInstance force
Loop
{
WinWaitActive, Calc
{
    Send, 12345
    WinWaitNotActive, Calc
}
    
por 15.08.2012 / 00:57