Aller au contenu principal

Appuyer sur une touche du clavier matériel (:down)

Cette méthode est disponible à partir de la version 20260805

Déclaration

succès, message d’erreur = objet clavier matériel:down(code de touche)
succès, message d’erreur = objet clavier matériel:down(Usage_Page, Usage_ID)

Paramètres

  • code de touche Chaîne, utilise la même correspondance de noms de touches que key.press.
  • Usage Page Entier, cet objet clavier matériel n’accepte que le Keyboard/Keypad Usage Page 0x07.
  • Usage ID Entier, numéro de la touche physique, et non son encodage de caractère.

Valeur de retour

  • succès Booléen, renvoie true si l’envoi réussit et false dans le cas contraire.
  • message d’erreur Chaîne, message d’erreur en cas d’échec de l’envoi.

Description

Appuie sur une touche du clavier matériel. Après l’appui, appelez :up pour la relâcher.

  • Si le même clavier exécute une séquence :press ou :send_text, cette méthode renvoie false, "hardware keyboard is busy".
  • Au maximum 6 touches ordinaires peuvent être maintenues enfoncées simultanément, sans compter les touches modificatrices ; au-delà, le système cible ne peut pas identifier les touches, il faut donc en relâcher certaines.
  • En cas d’échec de l’envoi, renvoie false et un message d’erreur, sans réessayer automatiquement avec un autre mode de saisie.

Exemple

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())