Destinée Hotkey Fonction: Capitaliser caractère si la touche enfoncée plus 0,2slong presse = Capitaliser
Survenant Problème: Lorsque vous tapez « vbnm » dans une rangée d'une manière rapide (ce qui signifie que je appuyez sur la touche suivante tout en maintenant la touche précédente enfoncée) alors AHK émet juste x fois la touche qui a été pressée en premier, ce qui donne ici "vvvv".
C'est le code. S'il vous plaît, aidez-moi (y) :-)
$y::
$x::
$c::
$v::
$b::
$n::
$m::
key := SubStr(A_ThisHotkey, 2)
;MsgBox, %key% ;it recognizes/shows all keys pressed correctly,
;but in the end it prints just x-times the key that was pressed first
;whereby x is the number of keys pressed very quickly in a row
KeyWait, %key%, T0.2 ;Long press = capitalize
If ErrorLevel
SendInput +%key%
Else
SendInput %key%
Return
Heureux d'entendre votre réponse! Votre script fait une différence. Taper "vbnm" ne signifie plus "vvvv", mais "mnbv", donc chaque caractère est envoyé mais dans le mauvais ordre. Mettre le code dans une fonction séparée était la solution. Ajout de critique remet les caractères en ordre, et maintenant il semble bien fonctionner. Deux choses ne sont toujours pas très satisfaisantes: Premièrement, écrire de l'umlaute allemand, des touches spéciales ou des chiffres, mais je l'ai résolu. Deuxièmement, appuyez sur une touche trop longtemps et il sortira non seulement la lettre en majuscule, mais aussi la lettre normale, par exemple "Oo". – EssenceBlue