CMenu::ModifyMenu

BOOL ModifyMenu ( UINT nPosition, UINT nFlags, UINT nIDNewItem = 0, LPCTSTR lpszNewItem = NULL );

BOOL ModifyMenu ( UINT nPosition, UINT nFlags, UINT nIDNewItem, const CBitmap * pBmp );

Valore restituito

Diverso da zero se la funzione ha esito positivo; in caso contrario 0.

Parametri

nPosition

Specifica la voce di menu da modificare. Il parametro nFlags può essere utilizzato per interpretare nPosition nei modi seguenti:

nFlags Interpretazione di nPosition
MF_BYCOMMAND Specifica che il parametro dà il comando ID dell'elemento esistente dal menu. Questo è il valore predefinito se viene impostato né MF_BYCOMMANDMF_BYPOSITION.
MF_BYPOSITION Specifica che il parametro dà la posizione dell'elemento esistente dal menu. Il primo elemento è nella posizione 0.

nFlags

Specifica come viene interpretato nPosition e dà informazioni sulle modifiche da apportare alla voce di menu. Per un elenco di flag che possono essere, vedere la funzione membro AppendMenu.

nIDNewItem

Specifica l'ID di comando della voce di menu modificato o, se nFlags è impostato su MF_POPUP, la maniglia di menù (HMENU) di un menu a comparsa. Il parametro nIDNewItem viene ignorato (non necessaria) se nFlags è impostato su MF_SEPARATOR.

lpszNewItem

Specifica il contenuto della nuova voce di menu. Il parametro nFlags può essere utilizzato per interpretare lpszNewItem nei modi seguenti:

nFlags Interpretazione di lpszNewItem
MF_OWNERDRAW Contiene un valore fornito dal applicazione a 32-bit che l'applicazione può utilizzare per gestire i dati aggiuntivi associati con la voce di menu. Questo valore a 32 bit è disponibile all'applicazione quando elabora MF_MEASUREITEM e MF_DRAWITEM.
MF_STRING Contiene un puntatore lungo una stringa null-terminated o un CString.
MF_SEPARATOR Il parametro lpszNewItem viene ignorato (non serve).

pBmp

Punti a un oggetto CBitmap che verrà utilizzata come la voce di menu.

Osservazioni

Modifica una voce di menu esistenti nella posizione specificata da nPosition. L'applicazione specifica il nuovo stato della voce di menu impostando valori nFlags. Se questa funzione sostituisce un menu a comparsa connesso con la voce di menu, distrugge il vecchio menu pop-up e libera la memoria utilizzata dal menu a comparsa.

Quando nIDNewItem specifica un menu a comparsa, diventa parte del menu in cui è inserito. Se viene distrutto quel menu, il menu inserito anche sarà distrutti. Un menu inserito dovrebbe essere staccato da un oggetto CMenu per evitare conflitti.

Ogni volta che un menu che risiede in una finestra è cambiato (o non viene visualizzata la finestra), l'applicazione deve chiamare CWnd::DrawMenuBar. Per modificare gli attributi delle voci di menu esistenti, è molto più veloce di utilizzare le funzioni membro CheckMenuItem ed EnableMenuItem.

CMenu panoramica |nbsp; Membri della classe | Gerarchia Chart

Vedere anchenbsp;CMenu:: AppendMenu, CMenu::InsertMenu, CMenu::CheckMenuItem, CWnd::DrawMenuBar, CMenu::EnableMenuItem, CMenu::SetMenuItemBitmaps, CMenu::Detach, :: ModifyMenu

Index