BOOLModifyMenu (UINTnPosition,UINTnFlags,UINTnIDNewItem=0,LPCTSTRLpszNewItemNULL=);
BOOL ModifyMenu ( UINT nPosition, UINT nFlags, UINT nIDNewItem, const CBitmap * pBmp );
Rückgabewert
Ungleich NULL, wenn die Funktion erfolgreich ist; andernfalls 0.
Parameter
nPosition
Gibt das Menüelement im geändert werden. Des nFlags -Parameters kann verwendet werden, um nPosition auf folgende Weise zu interpretieren:
| nFlags | Interpretation der nPosition |
| MF_BYCOMMAND | Gibt an, dass der Parameter die Befehls-ID, der das vorhandene Menüelement gibt. Dies ist die Standardeinstellung, wenn weder MF_BYCOMMAND noch MF_BYPOSITION festgelegt ist. |
| MF_BYPOSITION | Gibt an, dass der Parameter die Position des bestehenden Menüpunkt gibt. Das erste Element befindet sich an Position 0. |
nFlags
Gibt an, wie nPosition interpretiert wird und gibt Informationen über die Änderungen zum Menüpunkt vorgenommen werden. Eine Liste von Flags, die festgelegt werden können, finden Sie unter die Memberfunktion AppendMenu.
nIDNewItem
Gibt die Befehls-ID des Menüelements geändert oder, wenn nFlags MF_POPUP, das Menü-Handle (HMENU) des ein Popup-Menü festgelegt ist. Der nIDNewItem -Parameter wird (nicht erforderlich) ignoriert, wenn Sie MF_SEPARATOR nFlags festgelegt ist.
lpszNewItem
Gibt den Inhalt des neuen Menüelements. Des nFlags -Parameters kann verwendet werden, um LpszNewItem auf folgende Weise zu interpretieren:
| nFlags | Interpretation der lpszNewItem |
| MF_OWNERDRAW | Enthält einen Anwendung bereitgestellte 32-Bit-Wert, den die Anwendung verwenden kann, um zusätzliche Daten zugeordnet Menüpunkt pflegen. Dieser 32-Bit-Wert ist für die Anwendung verfügbar, beim Verarbeiten von MF_MEASUREITEM und MF_DRAWITEM. |
| MF_STRING | Enthält einen langen Zeiger auf eine Null-terminierte Zeichenfolge oder ein CString. |
| MF_SEPARATOR | Der LpszNewItem -Parameter wird ignoriert (nicht erforderlich). |
pBmp
Punkte auf einer CBitmap -Objekt, das als das Menüelement verwendet wird.
Bemerkungen
Ändert ein vorhandenes Menüelement an der angegebenen von nPositionPosition. Die Anwendung gibt den neuen Zustand des Menüelements durch Festlegen von Werten in nFlags. Wenn diese Funktion ein Popup-Menü den Menüpunkt zugeordnet ersetzt, es zerstört das alte Pop-up Menü und gibt den Speicher frei von im Popupmenü verwendet.
Wenn nIDNewItem ein Popup-Menü gibt, wird es Teil des Menüs, in die es eingefügt wird. Wenn das Menü zerstört ist, wird das eingefügte Menü auch zerstört werden. Eine eingefügte Menü sollte getrennt werden aus einem CMenu -Objekt, um Konflikte zu vermeiden.
Wenn ein Menü, das in einem Window befindet (ob oder nicht das Fenster angezeigt wird) geändert wird, sollte die Anwendung CWnd::DrawMenuBaraufrufen. Um die Attribute der vorhandenen Menüelemente ändern, ist es viel schneller, verwenden Sie die Memberfunktionen CheckMenuItem und EnableMenuItem.
Übersicht über die CMenu |nbsp; Member der Klasse | Hierarchiediagramm
Siehe auch&Nbsp;CMenu::AppendMenu, CMenu::InsertMenu, CMenu::CheckMenuItem, CWnd::DrawMenuBar, CMenu::EnableMenuItem, CMenu::SetMenuItemBitmaps, CMenu::Detach, :: ModifyMenu