Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Envoyé à la fenêtre propriétaire d’un menu lorsque l’utilisateur sélectionne un élément de menu.
#define WM_MENUSELECT 0x011F
Paramètres
-
wParam
-
Le mot de bas ordre spécifie l’élément de menu ou l’index de sous-menu. Si l’élément sélectionné est un élément de commande, ce paramètre contient l’identificateur de l’élément de menu. Si l’élément sélectionné ouvre un menu déroulant ou un sous-menu, ce paramètre contient l’index du menu déroulant ou du sous-menu dans le menu principal, et le paramètre lParam contient le handle du menu principal ; utilisez la fonction GetSubMenu pour obtenir la poignée de menu dans le menu déroulant ou le sous-menu.
Le mot à ordre élevé spécifie un ou plusieurs indicateurs de menu. Ce paramètre peut être une ou plusieurs des valeurs suivantes.
Valeur Meaning - MF_BITMAP
- 0x00000004L
L’élément affiche une bitmap. - MF_CHECKED
- 0x0000008L
L’élément est activé. - MF_DISABLED
- 0x00000002L
L’élément est désactivé. - MF_GRAYED
- 0x00000001L
L’élément est grisé. - MF_HILITE
- 0x00000080L
L’élément est mis en surbrillance. - MF_MOUSESELECT
- 0x00008000L
L’élément est sélectionné avec la souris. - MF_OWNERDRAW
- 0x00000100L
L’élément est un élément dessiné par le propriétaire. - MF_POPUP
- 0x00000010L
L’élément ouvre un menu déroulant ou un sous-menu. - MF_SYSMENU
- 0x00002000L
L’élément est contenu dans le menu de la fenêtre. Le paramètre lParam contient un handle dans le menu associé au message. -
lParam
-
Handle du menu principal.
Valeur retournée
Si une application traite ce message, elle doit retourner zéro.
Remarques
Ce message est envoyé à la fenêtre propriétaire d’un menu lorsque l’utilisateur sélectionne un élément de menu dans un menu ouvert, généralement par navigation avec souris ou clavier. Si le menu est fermé, ce message n’est pas envoyé lorsque l’utilisateur déplace la souris sur un élément de menu de niveau supérieur. Ce message est envoyé uniquement après l’ouverture du menu par l’utilisateur en cliquant sur un élément de menu de niveau supérieur ou en appuyant sur la touche Alt .
Important
Lorsqu’un utilisateur clique sur un élément de menu ou appuie sur Entrée pour appeler un élément de menu sélectionné, un message WM_COMMAND ou WM_MENUCOMMAND est envoyé à la fenêtre, en fonction de la valeur du membre dwStyle de la structure MENUINFO du menu. Utilisez ces messages pour effectuer une action lorsque la commande sélectionnée est appelée.
Si le mot de classement élevé de wParam contient 0xFFFF et que le paramètre lParam contient NULL, le système a fermé le menu.
N’utilisez pas la valeur -1 pour le mot de classement élevé de wParam, car cette valeur est spécifiée en tant que (UINT) HIWORD(wParam). Même si 0xFFFF peut être interprétée comme -1 dans des contextes signés, si la valeur est 0xFFFF, elle serait interprétée comme 0x0000FFFF, et non -1, en raison de la conversion en uiNT.
Par exemple, ce code vérifie 0xFFFF, et non -1 :
case WM_MENUSELECT:
{
UINT menuItem = LOWORD(wParam);
UINT flags = HIWORD(wParam);
HMENU hMenu = (HMENU)lParam;
// Check for 0xFFFF, not -1.
if (flags == 0xFFFF && hMenu == NULL) {
// No menu item selected (menu closed).
// ...
}
break;
}
Spécifications
| Requirement | 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] |
| Header |
|
Voir aussi
-
Référence
-
Conceptuel