MENUITEMINFOA, structure (winuser.h)
Contient des informations sur un élément de menu.
Syntaxe
typedef struct tagMENUITEMINFOA {
UINT cbSize;
UINT fMask;
UINT fType;
UINT fState;
UINT wID;
HMENU hSubMenu;
HBITMAP hbmpChecked;
HBITMAP hbmpUnchecked;
ULONG_PTR dwItemData;
LPSTR dwTypeData;
UINT cch;
HBITMAP hbmpItem;
} MENUITEMINFOA, *LPMENUITEMINFOA;
Membres
cbSize
Type : uiNT
Taille de la structure, en octets. L’appelant doit définir ce membre sur sizeof(MENUITEMINFO)
.
fMask
Type : uiNT
Indique les membres à récupérer ou définir. Ce membre peut être une ou plusieurs des valeurs suivantes.
fType
Type : uiNT
Type d’élément de menu. Ce membre peut être une ou plusieurs des valeurs suivantes.
Les valeurs MFT_BITMAP, MFT_SEPARATORet MFT_STRING ne peuvent pas être combinées entre elles. Définissez fMask sur MIIM_TYPE pour utiliser fType .
fType est utilisé uniquement si fMask a une valeur de MIIM_FTYPE.
Valeur | Signification |
---|---|
|
Affiche l’élément de menu à l’aide d’une bitmap. Le mot de faible ordre du membre dwTypeData est le handle bitmap et le membre est ignoré.
MFT_BITMAP est remplacé par MIIM_BITMAP et hbmpItem. |
|
Place l’élément de menu sur une nouvelle ligne (pour une barre de menus) ou dans une nouvelle colonne (pour un menu déroulant, un sous-menu ou un menu contextuel). Pour un menu déroulant, un sous-menu ou un menu contextuel, une ligne verticale sépare la nouvelle colonne de l’ancienne. |
|
Place l’élément de menu sur une nouvelle ligne (pour une barre de menus) ou dans une nouvelle colonne (pour un menu déroulant, un sous-menu ou un menu contextuel). Pour un menu déroulant, un sous-menu ou un menu contextuel, les colonnes ne sont pas séparées par une ligne verticale. |
|
Attribue la responsabilité de dessiner l’élément de menu dans la fenêtre propriétaire du menu. La fenêtre reçoit un message WM_MEASUREITEM avant que le menu ne s’affiche pour la première fois, et un message WM_DRAWITEM chaque fois que l’apparence de l’élément de menu doit être mise à jour. Si cette valeur est spécifiée, le membre dwTypeData |
|
Affiche les éléments de menu sélectionnés à l’aide d’une case d’option au lieu d’une coche si le membre hbmpChecked est NULL. |
|
Justifie avec le bouton droit l’élément de menu et tous les éléments suivants. Cette valeur est valide uniquement si l’élément de menu se trouve dans une barre de menus. |
|
Spécifie que les menus cascadent de droite à gauche (la valeur par défaut est de gauche à droite). Ceci est utilisé pour prendre en charge les langues de droite à gauche, telles que l’arabe et l’hébreu. |
|
Spécifie que l’élément de menu est un séparateur. Un séparateur d’élément de menu apparaît sous la forme d’une ligne de division horizontale. Les membres dwTypeData et cch sont ignorés. Cette valeur est valide uniquement dans un menu déroulant, un sous-menu ou un menu contextuel. |
|
Affiche l’élément de menu à l’aide d’une chaîne de texte. Le membre dwTypeData MFT_STRING est remplacé par MIIM_STRING. |
fState
Type : uiNT
État de l’élément de menu. Ce membre peut être une ou plusieurs de ces valeurs. Définissez fMask sur MIIM_STATE pour utiliser fState.
wID
Type : uiNT
Valeur définie par l’application qui identifie l’élément de menu. Définissez fMask sur MIIM_ID pour utiliser wID .
hSubMenu
Type : HMENU
Handle du menu déroulant ou sous-menu associé à l’élément de menu. Si l’élément de menu n’est pas un élément qui ouvre un menu déroulant ou un sous-menu, ce membre est NULL. Définissez fMask sur MIIM_SUBMENU pour utiliser hSubMenu .
hbmpChecked
Type : HBITMAP
Handle vers la bitmap à afficher en regard de l’élément s’il est sélectionné. Si ce membre est NULL, une bitmap par défaut est utilisée. Si la valeur de type MFT_RADIOCHECK est spécifiée, la bitmap par défaut est une puce. Sinon, il s’agit d’une coche. Définissez fMask sur MIIM_CHECKMARKS pour utiliser hbmpChecked .
hbmpUnchecked
Type : HBITMAP
Handle vers la bitmap à afficher en regard de l’élément s’il n’est pas sélectionné. Si ce membre est null, aucune bitmap n’est utilisée. Définissez fMask sur MIIM_CHECKMARKS pour utiliser hbmpUnchecked.
dwItemData
Type : ULONG_PTR
Valeur définie par l’application associée à l’élément de menu. Définissez fMask sur MIIM_DATA pour utiliser dwItemData.
dwTypeData
Type : LPTSTR
Contenu de l’élément de menu. La signification de ce membre dépend de la valeur de fType et est utilisée uniquement si l’indicateur MIIM_TYPE est défini dans le membre fMask.
Pour récupérer un élément de menu de type
Lorsque vous utilisez la fonction
cch
Type : uiNT
Longueur du texte de l’élément de menu, en caractères, lorsque des informations sont reçues sur un élément de menu du type MFT_STRING. Toutefois, cch est utilisé uniquement si l’indicateur MIIM_TYPE est défini dans le membre fMask et est égal à zéro dans le cas contraire. En outre, cch est ignoré lorsque le contenu d’un élément de menu est défini en appelant SetMenuItemInfo.
Notez que, avant d’appeler
Le membre
hbmpItem
Type : HBITMAP
Handle de l’image bitmap à afficher, ou il peut s’agir de l’une des valeurs du tableau suivant. Il est utilisé lorsque l’indicateur de
Valeur | Signification |
---|---|
|
Bitmap dessinée par la fenêtre propriétaire du menu. L’application doit traiter les messages WM_MEASUREITEM et WM_DRAWITEM. |
|
Bouton Fermer pour la barre de menus. |
|
Bouton Fermer désactivé pour la barre de menus. |
|
Bouton Réduire la barre de menus. |
|
Bouton Réduire désactivé pour la barre de menus. |
|
Bouton Restaurer pour la barre de menus. |
|
Bouton Fermer pour le sous-menu. |
|
Bouton Agrandir pour le sous-menu. |
|
Bouton Réduire pour le sous-menu. |
|
Bouton Restaurer pour le sous-menu. |
|
Icône Windows ou icône de la fenêtre spécifiée dans dwItemData. |
Remarques
La structure MENUITEMINFO est utilisée avec les fonctions GetMenuItemInfo, InsertMenuItemet SetMenuItemInfo.
Le menu peut afficher des éléments à l’aide de texte, de bitmaps ou des deux.
Note
L’en-tête winuser.h définit MENUITEMINFO comme alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
serveur minimum pris en charge | Windows 2000 Server [applications de bureau uniquement] |
d’en-tête | winuser.h (include Windows.h) |
Voir aussi
conceptuelle
de référence