Funzione InsertMenuA (winuser.h)
Inserisce una nuova voce di menu in un menu, spostando le altre voci verso il basso nel menu.
Sintassi
BOOL InsertMenuA(
[in] HMENU hMenu,
[in] UINT uPosition,
[in] UINT uFlags,
[in] UINT_PTR uIDNewItem,
[in, optional] LPCSTR lpNewItem
);
Parametri
[in] hMenu
Tipo: HMENU
Handle del menu da modificare.
[in] uPosition
Tipo: UINT
Voce di menu prima della quale deve essere inserita la nuova voce di menu, come determinato dal parametro uFlags.
[in] uFlags
Tipo: UINT
Controlla l'interpretazione del parametro uPosition e il contenuto, l'aspetto e il comportamento della nuova voce di menu. Questo parametro deve includere uno dei valori obbligatori seguenti.
Il parametro deve includere anche almeno uno dei valori seguenti.
Valore | Significato |
---|---|
|
Usa una bitmap come voce di menu. Il parametro lpNewItem contiene un handle per la bitmap. |
|
Posiziona un segno di spunta accanto alla voce di menu. Se l'applicazione fornisce bitmap con segno di spunta (vedere SetMenuItemBitmaps), questo flag visualizza la bitmap del segno di spunta accanto alla voce di menu. |
|
Disabilita la voce di menu in modo che non possa essere selezionata, ma non grigia. |
|
Abilita la voce di menu in modo che possa essere selezionata e ripristinata dal relativo stato disattivato. |
|
Disabilita la voce di menu e la grigio in modo che non possa essere selezionata. |
|
Funziona come il flag di MF_MENUBREAK per una barra dei menu. Per un menu a discesa, un sottomenu o un menu di scelta rapida, la nuova colonna è separata dalla colonna precedente in base a una linea verticale. |
|
Inserisce l'elemento in una nuova riga (per le barre dei menu) o in una nuova colonna (per un menu a discesa, un sottomenu o un menu di scelta rapida) senza separare le colonne. |
|
Specifica che l'elemento è un elemento disegnato dal proprietario. Prima che il menu venga visualizzato per la prima volta, la finestra proprietaria del menu riceve un messaggio WM_MEASUREITEM per recuperare la larghezza e l'altezza della voce di menu. Il messaggio WM_DRAWITEM viene quindi inviato alla routine della finestra del proprietario ogni volta che è necessario aggiornare l'aspetto della voce di menu. |
|
Specifica che la voce di menu apre un menu a discesa o un sottomenu. Il parametro uIDNewItem specifica un handle per il menu a discesa o il sottomenu. Questo flag viene usato per aggiungere un nome di menu a una barra dei menu o a una voce di menu che apre un sottomenu a un menu a discesa, un sottomenu o un menu di scelta rapida. |
|
Disegna una linea di divisione orizzontale. Questo flag viene usato solo in un menu a discesa, in un sottomenu o in un menu di scelta rapida. La riga non può essere disattivata, disabilitata o evidenziata. I parametri |
|
Specifica che la voce di menu è una stringa di testo; il parametro lpNewItem è un puntatore alla stringa. |
|
Non inserisce un segno di spunta accanto alla voce di menu (impostazione predefinita). Se l'applicazione fornisce bitmap con segno di spunta (vedere la funzione SetMenuItemBitmaps), questo flag visualizza la bitmap non crittografata accanto alla voce di menu. |
[in] uIDNewItem
Tipo: UINT_PTR
Identificatore della nuova voce di menu o, se il parametro uFlags ha il flag MF_POPUP impostato, un handle per il menu a discesa o il sottomenu.
[in, optional] lpNewItem
Tipo: LPCTSTR
Contenuto della nuova voce di menu. L'interpretazione di
Valore restituito
Tipo: bool
Se la funzione ha esito positivo, il valore restituito è diverso da zero.
Se la funzione ha esito negativo, il valore restituito è zero. Per ottenere informazioni estese sull'errore, chiamare GetLastError.
Osservazioni
L'applicazione deve chiamare la funzione
Non è possibile utilizzare insieme i gruppi di flag seguenti:
- MF_BYCOMMAND e MF_BYPOSITION
- MF_DISABLED, MF_ENABLEDe MF_GRAYED
- MF_BITMAP, MF_STRING, MF_OWNERDRAWe MF_SEPARATOR
- MF_MENUBARBREAK e MF_MENUBREAK
- MF_CHECKED e MF_UNCHECKED
Nota
L'intestazione winuser.h definisce InsertMenu come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Windows 2000 Professional [solo app desktop] |
server minimo supportato | Windows 2000 Server [solo app desktop] |
piattaforma di destinazione | Finestre |
intestazione |
winuser.h (include Windows.h) |
libreria |
User32.lib |
dll | User32.dll |
set di API | ext-ms-win-ntuser-menu-l1-1-0 (introdotto in Windows 8) |
Vedere anche
concettuale
altre risorse
riferimento