WM_DEADCHAR message
Publié dans la fenêtre avec le focus clavier lorsqu’un message WM_KEYUP est traduit par la fonction TranslateMessage . WM_DEADCHAR spécifie un code de caractère généré par une clé morte. Une clé morte est une clé qui génère un caractère, tel que l’umlaut (point double), qui est combiné avec un autre caractère pour former un caractère composite. Par exemple, le caractère umlaut-O ( ) est généré en tapant la clé morte pour le caractère umlaut, puis en tapant la touche O.
#define WM_DEADCHAR 0x0103
Paramètres
-
wParam
-
Code de caractère généré par la clé morte.
-
lParam
-
Le nombre de répétitions, le code d’analyse, l’indicateur de clé étendue, le code de contexte, l’indicateur d’état de clé précédent et l’indicateur d’état de transition, comme indiqué dans le tableau suivant.
Bits Signification 0-15 Nombre de répétitions pour le message actuel. La valeur est le nombre de fois où la séquence de touches est répérée automatiquement en raison de la conservation de la touche par l’utilisateur. Si la séquence de touches est maintenue suffisamment longtemps, plusieurs messages sont envoyés. Toutefois, le nombre de répétitions n’est pas cumulatif. 16-23 Code d’analyse. La valeur dépend de l’OEM. 24 Indique si la touche est une touche étendue, telle que les touches Alt et Ctrl de droite qui s’affichent sur un clavier amélioré à 101 ou 102 touches. La valeur est 1 s’il s’agit d’une clé étendue ; sinon, c’est 0. 25-28 Réservés au; n’utilisez pas. 29 Code de contexte. La valeur est 1 si la touche ALT est maintenue enfoncée pendant que la touche est enfoncée ; sinon, la valeur est 0. 30 État de clé précédent. La valeur est 1 si la clé est en panne avant l’envoi du message, ou elle est 0 si la clé est en place. 31 État de transition. La valeur est 1 si la touche est relâchée, ou elle est 0 si la touche est enfoncée. Pour plus d’informations, consultez Indicateurs de message de séquence de touches.
Valeur retournée
Une application doit retourner zéro si elle traite ce message.
Notes
Le message WM_DEADCHAR est généralement utilisé par les applications pour fournir des commentaires à l’utilisateur sur chaque touche enfoncée. Par exemple, une application peut afficher l’accentuation à la position actuelle du caractère sans déplacer l’insertion.
Étant donné qu’il n’existe pas nécessairement de correspondance un-à-un entre les touches enfoncées et les messages de caractères générés, les informations dans le mot d’ordre supérieur du paramètre lParam ne sont généralement pas utiles pour les applications. Les informations contenues dans le mot d’ordre supérieur s’appliquent uniquement au message WM_KEYDOWN le plus récent qui précède la publication du message WM_DEADCHAR .
Pour les claviers à 101 et 102 touches améliorés, les touches étendues sont les touches ALT droite et CTRL droite sur la section main du clavier ; les touches INS, DEL, HOME, END, PAGE HAUT, PAGE BAS et flèche dans les clusters à gauche du pavé numérique; ainsi que les touches division (/) et ENTRÉE dans le pavé numérique. D’autres claviers peuvent prendre en charge le bit de touche étendue dans le paramètre lParam .
Spécifications
Condition requise | Valeur |
---|---|
Client minimal pris en charge |
Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge |
Windows 2000 Server [applications de bureau uniquement] |
En-tête |
|