Pular para o conteúdo principal

Pressionar uma tecla do teclado de hardware (:down)

Este método está disponível somente a partir da versão 20260805.

Declarações

sucesso, mensagem_de_erro = objeto_teclado:down(codigo_da_tecla)
sucesso, mensagem_de_erro = objeto_teclado:down(Usage_Page, Usage_ID)

Parâmetros

  • codigo_da_tecla Texto; usa o mesmo mapeamento de nomes de teclas que key.press.
  • Usage Page Inteiro; o objeto de teclado de hardware atual aceita somente a Keyboard/Keypad Usage Page 0x07.
  • Usage ID Inteiro; número da tecla física, não uma codificação de caractere.

Valores retornados

  • sucesso Booleano; retorna true quando o envio é bem-sucedido e false quando falha.
  • mensagem_de_erro Texto; retorna a mensagem de erro quando o envio falha.

Descrição

Pressiona uma tecla do teclado de hardware. Depois de pressioná-la, chame o :up correspondente para liberá-la.

  • Se o mesmo teclado estiver executando uma sequência :press ou :send_text, este método retornará false, "hardware keyboard is busy".
  • É possível manter pressionadas no máximo 6 teclas comuns ao mesmo tempo; as teclas modificadoras não entram na contagem. Acima desse limite, o sistema de destino não consegue identificar as teclas específicas.
  • Quando o envio falhar, retorna false e uma mensagem de erro; não tenta automaticamente outro método de entrada.

Exemplo

local keyboard = assert(key.connect_keyboard())

assert(keyboard:press(0x07, 4)) -- Keyboard A
assert(keyboard:down(0x07, 0xE1)) -- Left Shift
assert(keyboard:up(0x07, 0xE1))

assert(keyboard:disconnect())