MENUITEMINFOW-Struktur (winuser.h)
Enthält Informationen zu einem Menüelement.
Syntax
typedef struct tagMENUITEMINFOW {
UINT cbSize;
UINT fMask;
UINT fType;
UINT fState;
UINT wID;
HMENU hSubMenu;
HBITMAP hbmpChecked;
HBITMAP hbmpUnchecked;
ULONG_PTR dwItemData;
LPWSTR dwTypeData;
UINT cch;
HBITMAP hbmpItem;
} MENUITEMINFOW, *LPMENUITEMINFOW;
Member
cbSize
Typ: UINT
Die Größe der Struktur in Bytes. Der Aufrufer muss diesen Member auf sizeof(MENUITEMINFO)
festlegen.
fMask
Typ: UINT
Gibt die abzurufenden oder festzulegenden Member an. Bei diesem Member kann es sich um einen oder mehrere der folgenden Werte handeln.
fType
Typ: UINT
Der Menüelementtyp. Bei diesem Member kann es sich um einen oder mehrere der folgenden Werte handeln.
Die Werte MFT_BITMAP, MFT_SEPARATOR und 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_FTYPE hat.
Wert | Bedeutung |
---|---|
|
Zeigt das Menüelement mithilfe einer Bitmap an. Das Wort mit niedriger Reihenfolge des dwTypeData-Elements ist das Bitmaphandle, und das cch-Element wird ignoriert.
MFT_BITMAP wird durch MIIM_BITMAP und hbmpItem ersetzt. |
|
Places 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. |
|
Places 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ü sind die Spalten nicht durch eine vertikale Linie getrennt. |
|
Weist die Verantwortung für das Zeichnen des Menüelements dem Fenster zu, das das Menü besitzt. Das Fenster empfängt eine WM_MEASUREITEM Meldung, bevor das Menü zum ersten Mal angezeigt wird, und eine WM_DRAWITEM Meldung, wenn die Darstellung des Menüelements aktualisiert werden muss. Wenn dieser Wert angegeben wird, enthält das dwTypeData-Element einen von der Anwendung definierten Wert. |
|
Zeigt ausgewählte Menüelemente mithilfe eines Optionsfelds anstelle eines Häkchens an, wenn das element hbmpCheckedNULL 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 kaskadiert werden (der Standardwert ist von links nach rechts). Dies wird verwendet, um Sprachen von rechts nach links zu unterstützen, z. B. Arabisch und Hebräisch. |
|
Gibt an, dass das Menüelement ein Trennzeichen ist. Ein Menüelementtrennzeichen wird als horizontale Trennlinie angezeigt. Die Elemente dwTypeData und cch werden ignoriert. Dieser Wert ist nur in einem Dropdownmenü, Untermenü oder Kontextmenü gültig. |
|
Zeigt das Menüelement mithilfe einer Textzeichenfolge an. Das dwTypeData-Element ist der Zeiger auf eine null-endende Zeichenfolge, und das cch-Element ist die Länge der Zeichenfolge.
MFT_STRING wird durch MIIM_STRING ersetzt. |
fState
Typ: UINT
Der Menüelementstatus. Bei diesem Member kann es sich um einen oder mehrere dieser Werte handeln. 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 Standard-Bitmap verwendet. Wenn der Wert MFT_RADIOCHECK Typs angegeben wird, ist die Standardbitte ein Aufzählungszeichen. Andernfalls ist es 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 hbmpUnchecked zu 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 von fType ab und wird nur verwendet, wenn das MIIM_TYPE-Flag im fMask-Element festgelegt ist.
Um ein Menüelement vom Typ MFT_STRING abzurufen, suchen Sie zuerst die Größe der Zeichenfolge, indem Sie das dwTypeData-Element von MENUITEMINFO auf NULL festlegen und dann GetMenuItemInfo aufrufen. Der Wert von cch+1 ist die erforderliche Größe. Ordnen Sie dann einen Puffer dieser Größe zu, platzieren Sie den Zeiger auf den Puffer in dwTypeData, erhöhen Sie cch, und rufen Sie GetMenuItemInfo erneut auf, um den Puffer mit der Zeichenfolge zu füllen. Wenn das abgerufene Menüelement von einem anderen Typ ist, legt GetMenuItemInfo das dwTypeData-Element auf einen Wert fest, dessen Typ vom 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-Element festgelegt ist.
cch
Typ: UINT
Die Länge des Menüelementtexts in Zeichen, wenn Informationen zu einem Menüelement des MFT_STRING Typs empfangen werden. cch wird jedoch nur verwendet, wenn das MIIM_TYPE-Flag im fMask-Element festgelegt ist und andernfalls null ist. Außerdem wird cch ignoriert, wenn der Inhalt eines Menüelements durch Aufrufen von SetMenuItemInfo festgelegt wird.
Beachten Sie, dass die Anwendung vor dem Aufrufen von GetMenuItemInfocch auf die Länge des Puffers festlegen muss, auf den das dwTypeData-Element verweist. Wenn das abgerufene Menüelement vom Typ MFT_STRING ist (wie durch das fType-Element 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 0 fest.
Das cch-Element wird verwendet, wenn das MIIM_STRING-Flag im fMask-Element festgelegt ist.
hbmpItem
Typ: HBITMAP
Ein Handle für die bitmap, die angezeigt werden soll, oder es kann sich um einen der Werte in der folgenden Tabelle handeln. Es wird verwendet, wenn das MIIM_BITMAP-Flag im fMask-Element festgelegt ist.
Wert | Bedeutung |
---|---|
|
Eine Bitmap, die von dem 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. |
|
Schaltfläche zum Schließen für die Menüleiste deaktiviert. |
|
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ü. |
|
Schaltfläche "Maximieren" für das Untermenü. |
|
Schaltfläche "Minimieren" für das Untermenü. |
|
Schaltfläche "Wiederherstellen" für das Untermenü. |
|
Windows-Symbol oder das Symbol des in dwItemData angegebenen Fensters. |
Hinweise
Die MENUITEMINFO-Struktur wird mit den Funktionen GetMenuItemInfo, InsertMenuItem und SetMenuItemInfo verwendet.
Im Menü können Elemente mithilfe von Text, Bitmaps oder beidem angezeigt werden.
Hinweis
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 nicht codierungsneutralem Code 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 |
---|---|
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Kopfzeile | winuser.h (einschließlich Windows.h) |
Siehe auch
Konzept
Referenz