Entrées du clavier
Cette section décrit comment le système génère une entrée au clavier et comment une application la reçoit et la traite.
Dans cette section
Nom | Description |
---|---|
À propos de l’entrée au clavier | Décrit les entrées au clavier. |
Utilisation des entrées au clavier | Décrit les tâches associées aux entrées du clavier. |
Informations de référence sur les entrées du clavier | Contient la référence API. |
Functions
Nom | Description |
---|---|
ActivateKeyboardLayout | Définit l’identificateur de paramètres régionaux d’entrée (anciennement appelé handle de disposition du clavier) pour le thread appelant ou le processus en cours. L’identificateur de paramètres régionaux d’entrée spécifie des paramètres régionaux ainsi que la disposition physique du clavier. |
BlockInput | Empêche les événements d’entrée du clavier et de la souris d’atteindre les applications. |
EnableWindow | Active ou désactive l’entrée de la souris et du clavier dans la fenêtre ou le contrôle spécifié. Lorsque l’entrée est désactivée, la fenêtre ne reçoit pas de données telles que les clics de souris et les pressions sur les touches. Lorsque l’entrée est activée, la fenêtre reçoit toutes les entrées. |
GetActiveWindow | Récupère le handle de la fenêtre active qui est joint à la file d'attente de messages du thread appelant. |
GetAsyncKeyState | Détermine si une touche est en haut ou en bas au moment où la fonction est appelée, et si la touche a été pressée après un appel précédent à GetAsyncKeyState. |
GetFocus | Récupère le handle de la fenêtre qui a le focus du clavier, si la fenêtre est jointe à la file d’attente de messages du thread appelant. |
GetKeyboardLayout | Récupère l’identificateur de paramètres régionaux d’entrée actif (anciennement la disposition du clavier) pour le thread spécifié. Si le paramètre idThread est égal à zéro, l’identificateur de paramètres régionaux d’entrée pour le thread actif est retourné. |
GetKeyboardLayoutList | Récupère les identificateurs de paramètres régionaux d’entrée (anciennement appelés handles de disposition du clavier) correspondant à l’ensemble actuel de paramètres régionaux d’entrée dans le système. La fonction copie les identificateurs dans la mémoire tampon spécifiée. |
GetKeyboardLayoutName | Récupère le nom de l’identificateur de paramètres régionaux d’entrée actif (anciennement la disposition du clavier). |
GetKeyboardState | Copie l’état des 256 clés virtuelles dans la mémoire tampon spécifiée. |
GetKeyNameText | Récupère une chaîne qui représente le nom d’une clé. |
GetKeyState | Récupère l'état de la clé virtuelle spécifiée. L'état indique si la touche est en haut, en bas ou si elle est actionnée (activée et désactivée en alternance chaque fois que la touche est enfoncée). |
GetLastInputInfo | Récupère l’heure du dernier événement d’entrée. |
IsWindowEnabled | Détermine si la fenêtre est activée pour les entrées de la souris et du clavier. |
LoadKeyboardLayout | Charge un nouvel identificateur de paramètres régionaux d’entrée (anciennement appelé disposition du clavier) dans le système. Plusieurs identificateurs de paramètres régionaux d’entrée peuvent être chargés à la fois, mais un seul par processus est actif à la fois. Le chargement de plusieurs identificateurs de paramètres régionaux d’entrée permet de basculer rapidement entre eux. |
MapVirtualKey | Convertit (mappe) un code de clé virtuelle en code d’analyse ou en valeur de caractère, ou traduit un code d’analyse en code de clé virtuelle. Afin de spécifier un handle pour la disposition du clavier à utiliser pour traduire le code spécifié, utilisez la fonction MapVirtualKeyEx. |
MapVirtualKeyEx | Mappe un code de clé virtuelle en code d’analyse ou en valeur de caractère, ou traduit un code d’analyse en code de clé virtuelle. La fonction traduit les codes à l’aide de la langue d’entrée et d’un identificateur de paramètres régionaux d’entrée. |
OemKeyScan | Mappe les codes OEMASCII 0 à l’aide de 0x0FF dans les codes d’analyse OEM et les états de décalage. La fonction fournit des informations qui permettent à un programme d’envoyer du texte OEM à un autre programme en simulant une entrée au clavier. |
RegisterHotKey | Définit une touche d’accès rapide à l’échelle du système. |
SendInput | Synthétise les frappes au clavier, les mouvements de la souris et les clics sur les boutons. |
SetActiveWindow | Active une fenêtre. La fenêtre doit être jointe à la file d’attente des messages du thread appelant. |
SetFocus | Définit le focus du clavier sur la fenêtre spécifiée. La fenêtre doit être jointe à la file d’attente des messages du thread appelant. |
SetKeyboardState | Copie une table de 256 octets d’états de touche de clavier dans la table d’état d’entrée du clavier du thread appelant. Il s’agit de la même table accessible à l’aide des fonctions GetKeyboardState et GetKeyState. Les modifications apportées à cette table n’affectent pas l’entrée du clavier dans un autre thread. |
ToAscii | Traduit le code de touche virtuelle et l’état du clavier spécifiés en caractères correspondants. La fonction traduit le code à l’aide de la langue d’entrée et de la disposition physique du clavier identifiée par le handle de disposition du clavier. Afin de spécifier un handle pour la disposition du clavier à utiliser pour traduire le code spécifié, utilisez la fonction ToAsciiEx. |
ToAsciiEx | Traduit le code de touche virtuelle et l’état du clavier spécifiés en caractères correspondants. La fonction traduit le code à l’aide de la langue d’entrée et de la disposition physique du clavier identifiée par le l’identificateur de paramètres régionaux. |
ToUnicode | Traduit le code de touche virtuelle et l’état du clavier spécifiés en caractères Unicode correspondants. Afin de spécifier un handle pour la disposition du clavier à utiliser pour traduire le code spécifié, utilisez la fonction ToUnicodeEx. |
ToUnicodeEx | Traduit le code de touche virtuelle et l’état du clavier spécifiés en caractères Unicode correspondants. |
UnloadKeyboardLayout | Décharge un identificateur de paramètres régionaux d’entrée (anciennement appelé disposition du clavier). |
UnregisterHotKey | Libère une touche d’accès rapide précédemment enregistrée par le thread appelant. |
VkKeyScanEx | Traduit un caractère en code de clé virtuelle et en état de décalage correspondants. La fonction traduit le caractère à l’aide de la langue d’entrée et de la disposition physique du clavier identifiée par le l’identificateur de paramètres régionaux. |
Les fonctions suivantes sont obsolètes.
Fonction | Description |
---|---|
GetKBCodePage | Récupère la page de codes actuelle. |
keybd_event | Synthétise une séquence de touches. Le système peut utiliser une telle séquence de touches synthétisée pour générer un message WM_KEYUP ou WM_KEYDOWN. Le gestionnaire d’interruptions du pilote de clavier appelle la fonction keybd_event. |
VkKeyScan | Traduit un caractère en code de clé virtuelle et en état de décalage correspondants pour le clavier actuel. |
Messages
Nom | Description |
---|---|
WM_GETHOTKEY | Détermine la touche d’accès rapide associée à une fenêtre. |
WM_SETHOTKEY | Associe une touche d’accès rapide à la fenêtre. Lorsque l’utilisateur appuie sur cette touche de raccourci, le système active la fenêtre. |
Notifications
Nom | Description |
---|---|
WM_ACTIVATE | Envoyé à la fenêtre en cours d’activation et à la fenêtre en cours de désactivation. Si les fenêtres utilisent la même file d’attente d’entrée, le message est envoyé de manière synchrone, d’abord à la procédure de fenêtre de la fenêtre de niveau supérieur en cours de désactivation, puis à la procédure de fenêtre de la fenêtre de niveau supérieur en cours d’activation. Si les fenêtres utilisent des files d’attente d’entrée différentes, le message est envoyé de manière asynchrone, de sorte que la fenêtre est immédiatement activée. |
WM_APPCOMMAND | Avertit une fenêtre que l’utilisateur a généré un événement de commande d’application, par exemple en cliquant sur un bouton de commande d’application à l’aide de la souris ou en tapant une touche de commande d’application sur le clavier. |
WM_CHAR | Publié dans la fenêtre qui a le focus clavier lorsqu'un message WM_KEYDOWN est traduit par la fonction TranslateMessage. Le message WM_CHAR contient le code de caractère de la touche qui a été enfoncée. |
WM_DEADCHAR | Publié dans la fenêtre qui a 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 touche morte. Une touche morte est une touche qui génère un caractère, par exemple l’umlaut (point double), combiné avec un autre caractère pour former un caractère composite. Par exemple, le caractère umlaut-O ( ) est généré en appuyant sur la touche morte pour le caractère umlaut, puis sur la touche O. |
WM_HOTKEY | Publié lorsque l'utilisateur appuie sur une touche d'accès rapide enregistrée par la fonction RegisterHotKey. Le message est placé en haut de la file d’attente de messages associée au thread qui a enregistré la touche de raccourci. |
WM_KEYDOWN | Publié dans la fenêtre avec le focus clavier quand une touche non système est relâchée. Une touche non système est une touche qui est enfoncée quand la touche ALT n’est pas enfoncée. |
WM_KEYUP | Publié dans la fenêtre avec le focus clavier lorsqu’une touche non système est relâchée. Une touche non système est une touche qui est enfoncée lorsque la touche ALT n’est pas enfoncée, ou une touche clavier qui est enfoncée lorsqu’une fenêtre a le focus clavier. |
WM_KILLFOCUS | Envoyé à une fenêtre immédiatement avant qu’elle ne perde le focus clavier. |
WM_SETFOCUS | Envoyé à une fenêtre après qu’elle a obtenu le focus clavier. |
WM_SYSDEADCHAR | Envoyé à la fenêtre qui a le focus clavier quand un message WM\_SYSKEYDOWN est traduit par la fonction TranslateMessage. WM_SYSDEADCHAR spécifie le code de caractère d’une touche morte système, c’est-à-dire une touche morte enfoncée tout en maintenant la touche ALT enfoncée. |
WM_SYSKEYDOWN | Affiché dans la fenêtre avec le focus clavier lorsque l'utilisateur appuie sur la touche F10 (qui active la barre de menu) ou maintient la touche ALT enfoncée et appuie ensuite sur une autre touche. Elle se produit également lorsqu’aucune fenêtre n’a actuellement le focus clavier ; dans ce cas, le message WM_SYSKEYDOWN est envoyé à la fenêtre active. La fenêtre qui reçoit le message peut faire la distinction entre ces deux contextes en vérifiant le code de contexte dans le paramètre lParam. |
WM_SYSKEYUP | Publié dans la fenêtre qui possède le focus clavier lorsque l’utilisateur relâche une touche qui a été actionnée alors que la touche Alt était maintenue enfoncée. Elle se produit également lorsqu’aucune fenêtre n’a actuellement le focus clavier ; dans ce cas, le message WM_SYSKEYUP est envoyé à la fenêtre active. La fenêtre qui reçoit le message peut faire la distinction entre ces deux contextes en vérifiant le code de contexte dans le paramètre lParam. |
WM_UNICHAR | Publié dans la fenêtre qui a le focus clavier lorsqu'un message WM_KEYDOWN est traduit par la fonction TranslateMessage. Le message WM_UNICHAR contient le code de caractère de la touche qui a été enfoncée. |
Structures
Nom | Description |
---|---|
HARDWAREINPUT | Contient des informations sur un message simulé généré par un périphérique d’entrée autre qu’un clavier ou une souris. |
INPUT | Contient des informations utilisées pour synthétiser les événements d’entrée tels que les frappes au clavier, les mouvements et les clics de souris. |
KEYBDINPUT | Contient des informations sur un événement de clavier simulé. |
LASTINPUTINFO | Contient l’heure de la dernière entrée. |
MOUSEINPUT | Contient des informations sur un événement de souris simulé. |
Constantes
Nom | Description |
---|---|
Codes de touche virtuelle | Les noms de constante symbolique, les valeurs hexadécimales et les équivalents de souris ou de clavier pour les codes de touche virtuelle utilisés par le système. Les codes sont répertoriés dans l’ordre numérique. |