WM_CONTEXTMENU message
Avertit une fenêtre que l’utilisateur souhaite qu’un menu contextuel apparaisse. L’utilisateur a peut-être cliqué sur le bouton droit de la souris (clic droit) dans la fenêtre, appuyé sur Maj+F10 ou appuyé sur la touche Applications (touche de menu contextuel) disponible sur certains claviers.
#define WM_CONTEXTMENU 0x007B
Paramètres
-
wParam
-
Handle de la fenêtre dans laquelle l’utilisateur a cliqué avec le bouton droit sur la souris. Il peut s’agir d’une fenêtre enfant de la fenêtre qui reçoit le message. Pour plus d’informations sur le traitement de ce message, consultez la section Remarques.
-
lParam
-
Le mot d’ordre inférieur spécifie la position horizontale du curseur, en coordonnées d’écran, au moment du clic de la souris.
Le mot d’ordre supérieur spécifie la position verticale du curseur, en coordonnées d’écran, au moment du clic de la souris.
Valeur retournée
Pas de valeur de retour.
Notes
Une fenêtre peut traiter ce message en affichant un menu contextuel à l’aide des fonctions TrackPopupMenu ou TrackPopupMenuEx . Pour obtenir les positions horizontales et verticales, utilisez le code suivant.
xPos = GET_X_LPARAM(lParam);
yPos = GET_Y_LPARAM(lParam);
Si une fenêtre n’affiche pas de menu contextuel, elle doit passer ce message à la fonction DefWindowProc . Si une fenêtre est une fenêtre enfant, DefWindowProc envoie le message au parent. Sinon, DefWindowProc affiche un menu contextuel par défaut si la position spécifiée se trouve dans le légende de la fenêtre.
DefWindowProc génère le message WM_CONTEXTMENU lorsqu’il traite le message WM_RBUTTONUP ou WM_NCRBUTTONUP ou lorsque l’utilisateur tape SHIFT+F10. Le message WM_CONTEXTMENU est également généré lorsque l’utilisateur appuie et relâche la touche VK_APPS .
Si le menu contextuel est généré à partir du clavier, par exemple, si l’utilisateur tape MAJ+F10, les coordonnées x et y ont la valeur -1 et l’application doit afficher le menu contextuel à l’emplacement de la sélection actuelle plutôt qu’à (xPos, yPos).
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 |
|
Voir aussi
-
Référence
-
Conceptuel