WM_SETHOTKEY message

Envoyé à une fenêtre pour associer une touche d’accès rapide à la fenêtre. Lorsque l’utilisateur appuie sur la touche d’accès rapide, le système active la fenêtre.

#define WM_SETHOTKEY                    0x0032

Paramètres

wParam

Le mot d’ordre inférieur spécifie le code de clé virtuelle à associer à la fenêtre.

Le mot d’ordre supérieur peut être une ou plusieurs des valeurs suivantes de CommCtrl.h.

La définition de wParam sur NULL supprime la touche d’accès rapide associée à une fenêtre.

Valeur Signification
HOTKEYF_ALT
0x04
touche ALT
HOTKEYF_CONTROL
0x02
Touche CTRL
HOTKEYF_EXT
0x08
Clé étendue
HOTKEYF_SHIFT
0x01
Touche MAJ

lParam

Ce paramètre n'est pas utilisé.

Valeur retournée

La valeur de retour est l’une des suivantes.

Valeur retournée Description
-1
La fonction échoue ; la touche d’accès rapide n’est pas valide.
0
La fonction échoue ; la fenêtre n’est pas valide.
1
La fonction réussit et aucune autre fenêtre n’a la même touche d’accès rapide.
2
La fonction réussit, mais une autre fenêtre a déjà la même touche d’accès rapide.

Notes

Une touche d’accès rapide ne peut pas être associée à une fenêtre enfant.

VK_ESCAPE, VK_SPACE et VK_TAB ne sont pas valides.

Lorsque l’utilisateur appuie sur la touche d’accès rapide, le système génère un message WM_SYSCOMMAND avec wParam égal à SC_HOTKEY et lParam égal au handle de la fenêtre. Si ce message est transmis à DefWindowProc, le système place la dernière fenêtre contextuelle active de la fenêtre (si elle existe) ou la fenêtre elle-même (s’il n’y a pas de fenêtre contextuelle) au premier plan.

Une fenêtre ne peut avoir qu’une seule touche d’accès rapide. Si une touche d’accès rapide est déjà associée à la fenêtre, la nouvelle touche d’accès rapide remplace l’ancienne. Si plusieurs fenêtres ont la même touche d’accès rapide, la fenêtre activée par la touche d’accès rapide est aléatoire.

Ces touches d’accès rapide ne sont pas liées aux touches d’accès rapide définies par RegisterHotKey.

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
Winuser.h (inclure Windows.h)

Voir aussi

Référence

RegisterHotKey

WM_GETHOTKEY

WM_SYSCOMMAND

Conceptuel

Entrées du clavier