MENUITEMINFOA-Struktur (winuser.h)
Enthält Informationen zu einem Menüelement.
Syntax
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;
Angehörige
cbSize
Typ: UINT-
Die Größe der Struktur in Byte. Der Aufrufer muss dieses Mitglied auf sizeof(MENUITEMINFO)
festlegen.
fMask
Typ: UINT-
Gibt die Elemente an, die abgerufen oder festgelegt werden sollen. Bei diesem Element kann es sich um einen oder mehrere der folgenden Werte handeln.
fType
Typ: UINT-
Der Menüelementtyp. Bei diesem Element kann es sich um einen oder mehrere der folgenden Werte handeln.
Die werte MFT_BITMAP, MFT_SEPARATORund MFT_STRING können nicht miteinander kombiniert werden. Legen Sie fMask- auf MIIM_TYPE fest, um fType-zu verwenden.
fType- wird nur verwendet, wenn fMask- den Wert MIIM_FTYPEhat.
Wert | Bedeutung |
---|---|
|
Zeigt das Menüelement mit einer Bitmap an. Das Wort mit niedriger Reihenfolge des dwTypeData- Members ist das Bitmaphandle, und das cch Member wird ignoriert.
MFT_BITMAP wird durch MIIM_BITMAP und hbmpItemersetzt. |
|
Platziert das Menüelement in einer neuen Zeile (für eine Menüleiste) oder in einer neuen Spalte (für ein Dropdownmenü, Untermenü oder Kontextmenü). Bei einem Dropdownmenü, Untermenü oder Kontextmenü trennt eine vertikale Linie die neue Spalte von der alten. |
|
Platziert das Menüelement in einer neuen Zeile (für eine Menüleiste) oder in einer neuen Spalte (für ein Dropdownmenü, Untermenü oder Kontextmenü). Bei einem Dropdownmenü, untermenü oder Kontextmenü werden die Spalten nicht durch eine vertikale Linie getrennt. |
|
Weist die Verantwortung für das Zeichnen des Menüelements auf das Fenster zu, das das Menü besitzt. Das Fenster empfängt eine WM_MEASUREITEM Nachricht, bevor das Menü zum ersten Mal angezeigt wird, und eine WM_DRAWITEM Nachricht, wenn die Darstellung des Menüelements aktualisiert werden muss. Wenn dieser Wert angegeben ist, enthält das dwTypeData-element ein anwendungsdefinierter Wert. |
|
Zeigt ausgewählte Menüelemente mithilfe eines Optionsfeldzeichens anstelle eines Häkchens an, wenn das hbmpChecked-element NULL-ist. |
|
Rechtfertigt das Menüelement und alle nachfolgenden Elemente. Dieser Wert ist nur gültig, wenn sich das Menüelement in einer Menüleiste befindet. |
|
Gibt an, dass Menüs von rechts nach links überlappen (der Standardwert ist von links nach rechts). Dies wird verwendet, um Rechts-nach-links-Sprachen wie Arabisch und Hebräisch zu unterstützen. |
|
Gibt an, dass das Menüelement ein Trennzeichen ist. Ein Menüelementtrennzeichen wird als horizontale Trennlinie angezeigt. Die dwTypeData- und cch-Member werden ignoriert. Dieser Wert ist nur in einem Dropdownmenü, Untermenü oder Kontextmenü gültig. |
|
Zeigt das Menüelement mithilfe einer Textzeichenfolge an. Der dwTypeData--Member ist der Zeiger auf eine mit Null beendete Zeichenfolge, und der cch Member ist die Länge der Zeichenfolge.
MFT_STRING wird durch MIIM_STRINGersetzt. |
fState
Typ: UINT-
Der Status des Menüelements. Dieses Element kann einen oder mehrere dieser Werte sein. Legen Sie fMask- auf MIIM_STATE fest, um fState-zu verwenden.
wID
Typ: UINT-
Ein anwendungsdefinierter Wert, der das Menüelement identifiziert. Legen Sie fMask- auf MIIM_ID fest, um wID-zu verwenden.
hSubMenu
Typ: HMENU
Ein Handle zum Dropdownmenü oder Untermenü, das dem Menüelement zugeordnet ist. Wenn das Menüelement kein Element ist, das ein Dropdownmenü oder untermenü öffnet, ist dieses Element NULL-. Legen Sie fMask- auf MIIM_SUBMENU fest, um hSubMenu-zu verwenden.
hbmpChecked
Typ: HBITMAP-
Ein Handle für die Bitmap, die neben dem Element angezeigt werden soll, wenn es ausgewählt ist. Wenn dieses Element NULL-ist, wird eine Standardbitmap verwendet. Wenn der wert des typs MFT_RADIOCHECK angegeben ist, ist die Standardbitmap ein Aufzählungszeichen. Andernfalls handelt es sich um ein Häkchen. Legen Sie fMask- auf MIIM_CHECKMARKS fest, um hbmpChecked-zu verwenden.
hbmpUnchecked
Typ: HBITMAP-
Ein Handle für die Bitmap, die neben dem Element angezeigt werden soll, wenn es nicht ausgewählt ist. Wenn dieses Element NULL-ist, wird keine Bitmap verwendet. Legen Sie fMask- auf MIIM_CHECKMARKS fest, um hbmpUncheckedzu verwenden.
dwItemData
Typ: ULONG_PTR
Ein anwendungsdefinierter Wert, der dem Menüelement zugeordnet ist. Legen Sie fMask- auf MIIM_DATA fest, um dwItemData-zu verwenden.
dwTypeData
Typ: LPTSTR-
Der Inhalt des Menüelements. Die Bedeutung dieses Elements hängt vom Wert fType- ab und wird nur verwendet, wenn das MIIM_TYPE Flag im fMask--Element festgelegt ist.
Um ein Menüelement vom Typ MFT_STRINGabzurufen, suchen Sie zuerst die Größe der Zeichenfolge, indem Sie das dwTypeData Member von MENUITEMINFO auf NULL- und dann GetMenuItemInfoaufrufen. Der Wert cch+1 ist die erforderliche Größe. Weisen Sie dann einen Puffer dieser Größe zu, platzieren Sie den Zeiger auf den Puffer in dwTypeData-, erhöht cch, und rufen Sie GetMenuItemInfo erneut auf, um den Puffer mit der Zeichenfolge auszufüllen. Wenn das abgerufene Menüelement einen anderen Typ aufweist, legt GetMenuItemInfo das dwTypeData-Element auf einen Wert fest, dessen Typ durch das fType-Element angegeben wird.
Bei Verwendung mit der SetMenuItemInfo--Funktion sollte dieses Element einen Wert enthalten, dessen Typ durch das fType--Element angegeben wird.
dwTypeData- wird nur verwendet, wenn das MIIM_STRING Flag im fMask Member festgelegt ist.
cch
Typ: UINT-
Die Länge des Menüelementtexts in Zeichen, wenn Informationen zu einem Menüelement des typs MFT_STRING empfangen werden. cch- wird jedoch nur verwendet, wenn das MIIM_TYPE Flag im fMask Member festgelegt ist und andernfalls Null ist. Außerdem wird cch- ignoriert, wenn der Inhalt eines Menüelements durch Aufrufen SetMenuItemInfofestgelegt wird.
Beachten Sie, dass die Anwendung vor dem Aufrufen GetMenuItemInfo-Cch- auf die Länge des Puffers festlegen muss, auf den der dwTypeData--Member verweist. Wenn das abgerufene Menüelement vom Typ MFT_STRING ist (wie durch den fType Member angegeben), ändert GetMenuItemInfocch in die Länge des Menüelementtexts. Wenn das abgerufene Menüelement einen anderen Typ aufweist, legt GetMenuItemInfo das cch- Feld auf Null fest.
Das cch Member wird verwendet, wenn das MIIM_STRING Flag im fMask Member festgelegt ist.
hbmpItem
Typ: HBITMAP-
Ein Handle für die anzuzeigende Bitmap, oder es kann sich um einen der Werte in der folgenden Tabelle handeln. Sie wird verwendet, wenn das MIIM_BITMAP Flag im fMask--Element festgelegt wird.
Wert | Bedeutung |
---|---|
|
Eine Bitmap, die vom Fenster gezeichnet wird, das das Menü besitzt. Die Anwendung muss die WM_MEASUREITEM und WM_DRAWITEM Nachrichten verarbeiten. |
|
Schaltfläche "Schließen" für die Menüleiste. |
|
Deaktivierte Schaltfläche "Schließen" für die Menüleiste. |
|
Schaltfläche "Minimieren" für die Menüleiste. |
|
Schaltfläche "Minimieren" für die Menüleiste deaktiviert. |
|
Schaltfläche "Wiederherstellen" für die Menüleiste. |
|
Schaltfläche 'Schließen' für das Untermenü. |
|
Maximieren-Schaltfläche für das Untermenü. |
|
Schaltfläche "Minimieren" für das Untermenü. |
|
Schaltfläche "Wiederherstellen" für das Untermenü. |
|
Windows-Symbol oder das Symbol des Fensters, das in dwItemData-angegeben ist. |
Bemerkungen
Die MENUITEMINFO--Struktur wird zusammen mit den funktionen GetMenuItemInfo, InsertMenuItemund SetMenuItemInfo verwendet.
Das Menü kann Elemente mithilfe von Text, Bitmaps oder beides anzeigen.
Anmerkung
Der winuser.h-Header definiert MENUITEMINFO als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows 2000 Professional [nur Desktop-Apps] |
mindestens unterstützte Server- | Windows 2000 Server [nur Desktop-Apps] |
Header- | winuser.h (enthalten Windows.h) |
Siehe auch
Konzeptionelle
Referenz-