! Saisir du texte avec le clavier matériel (:send_text)
Cette méthode est disponible dans les versions postérieures à 20260805
Déclaration
Succès, message d’erreur = objet clavier matériel:send_text(texte[, délai par touche, délai de la touche Shift])
Paramètres
- Texte
Type texte, texte à saisir ; prend uniquement en charge les lettres anglaises, chiffres, espaces, caractères ASCII ainsi que
"\b","\r"et"\t". - Délai par touche Type réel, paramètre facultatif, délai en millisecondes entre chaque opération de touche, 0 par défaut.
- Délai de la touche Shift Type réel, paramètre facultatif, délai en millisecondes avant et après l’appui ou le relâchement de Shift, 0 par défaut.
Valeur de retour
- Succès
Booléen, renvoie
truelorsque tout le texte a été envoyé etfalseen cas d’échec. - Message d’erreur Type texte, message d’erreur en cas d’échec de l’envoi.
Description
Génère les touches et les combinaisons avec Shift selon la disposition de clavier américain actuelle de Lua. Pendant la saisie, l’attente cède implicitement le contrôle ; avant le retour de la méthode, un autre thread peut avoir l’occasion de s’exécuter.
- Les caractères finalement saisis restent soumis à la disposition du clavier du système cible.
- Cette méthode préserve les touches ordinaires et modificatrices déjà enfoncées avant l’appel.
- Si le même clavier matériel exécute une séquence
:pressou:send_text, la nouvelle opération renvoiefalse, "hardware keyboard is busy". - En cas d’échec de l’envoi, aucune nouvelle tentative automatique avec un autre mode de saisie n’est effectuée.
Exemple
local keyboard = assert(key.connect_keyboard())
assert(keyboard:send_text("Hello"))
assert(keyboard:send_text("Hello", 30, 10))
assert(keyboard:disconnect())