Struttura MENUITEMINFOW (winuser.h)
Contiene informazioni su una voce di menu.
Sintassi
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;
Members
cbSize
Tipo: UINT
Dimensioni della struttura, in byte. Il chiamante deve impostare questo membro su sizeof(MENUITEMINFO)
.
fMask
Tipo: UINT
Indica i membri da recuperare o impostare. Questo membro può essere uno o più dei valori seguenti.
fType
Tipo: UINT
Tipo di voce di menu. Questo membro può essere uno o più dei valori seguenti.
I valori MFT_BITMAP, MFT_SEPARATOR e MFT_STRING non possono essere combinati tra loro. Impostare fMask su MIIM_TYPE per usare fType.
fType viene usato solo se fMask ha un valore di MIIM_FTYPE.
Valore | Significato |
---|---|
|
Visualizza la voce di menu utilizzando una bitmap. La parola in ordine basso del membro dwTypeData è l'handle bitmap e il membro cch viene ignorato.
MFT_BITMAP viene sostituito da MIIM_BITMAP e hbmpItem. |
|
Places la voce di menu in una nuova riga (per una barra dei menu) o in una nuova colonna (per un menu a discesa, un sottomenu o un menu di scelta rapida). Per un menu a discesa, un sottomenu o un menu di scelta rapida, una linea verticale separa la nuova colonna dal vecchio. |
|
Places la voce di menu in una nuova riga (per una barra dei menu) o in una nuova colonna (per un menu a discesa, un sottomenu o un menu di scelta rapida). Per un menu a discesa, un sottomenu o un menu di scelta rapida, le colonne non sono separate da una linea verticale. |
|
Assegna la responsabilità di disegnare la voce di menu alla finestra proprietaria del menu. La finestra riceve un messaggio WM_MEASUREITEM prima che il menu venga visualizzato per la prima volta e un messaggio WM_DRAWITEM ogni volta che l'aspetto della voce di menu deve essere aggiornato. Se questo valore viene specificato, il membro dwTypeData contiene un valore definito dall'applicazione. |
|
Visualizza le voci di menu selezionate utilizzando un segno di opzione anziché un segno di spunta se il membro hbmpChecked è NULL. |
|
Giustifica la voce di menu e tutti gli elementi successivi. Questo valore è valido solo se la voce di menu si trova in una barra dei menu. |
|
Specifica che i menu a catena da destra a sinistra (il valore predefinito è da sinistra a destra). Viene usato per supportare lingue da destra a sinistra, ad esempio arabo ed ebraico. |
|
Specifica che la voce di menu è un separatore. Un separatore di voci di menu viene visualizzato come linea di divisione orizzontale. I membri dwTypeData e cch vengono ignorati. Questo valore è valido solo in un menu a discesa, in un sottomenu o in un menu di scelta rapida. |
|
Visualizza la voce di menu utilizzando una stringa di testo. Il membro dwTypeData è il puntatore a una stringa con terminazione Null e il membro cch è la lunghezza della stringa.
MFT_STRING viene sostituito da MIIM_STRING. |
fState
Tipo: UINT
Stato della voce di menu. Questo membro può essere uno o più di questi valori. Impostare fMask su MIIM_STATE per usare fState.
wID
Tipo: UINT
Valore definito dall'applicazione che identifica la voce di menu. Impostare fMask su MIIM_ID per usare wID.
hSubMenu
Tipo: HMENU
Handle per il menu a discesa o il sottomenu associato alla voce di menu. Se la voce di menu non è una voce che apre un menu a discesa o un sottomenu, questo membro è NULL. Impostare fMask su MIIM_SUBMENU per usare hSubMenu.
hbmpChecked
Tipo: HBITMAP
Handle per la bitmap da visualizzare accanto all'elemento, se selezionato. Se questo membro è NULL, viene usata una bitmap predefinita. Se viene specificato il valore di tipo MFT_RADIOCHECK , la bitmap predefinita è un punto elenco. In caso contrario, è un segno di spunta. Impostare fMask su MIIM_CHECKMARKS per usare hbmpChecked.
hbmpUnchecked
Tipo: HBITMAP
Handle per la bitmap da visualizzare accanto all'elemento, se non è selezionato. Se questo membro è NULL, non viene usata alcuna bitmap. Impostare fMask su MIIM_CHECKMARKS per usare hbmpUnchecked.
dwItemData
Tipo: ULONG_PTR
Valore definito dall'applicazione associato alla voce di menu. Impostare fMask su MIIM_DATA per usare dwItemData.
dwTypeData
Tipo: LPTSTR
Contenuto della voce di menu. Il significato di questo membro dipende dal valore di fType e viene usato solo se il flag MIIM_TYPE è impostato nel membro fMask .
Per recuperare una voce di menu di tipo MFT_STRING, trovare prima le dimensioni della stringa impostando il membro dwTypeData di MENUITEMINFO su NULL e quindi chiamando GetMenuItemInfo. Il valore di cch+1 è la dimensione necessaria. Allocare quindi un buffer di questa dimensione, posizionare il puntatore al buffer in dwTypeData, incrementare cch e chiamare nuovamente GetMenuItemInfo per riempire il buffer con la stringa. Se la voce di menu recuperata è di un altro tipo, GetMenuItemInfo imposta il membro dwTypeData su un valore il cui tipo viene specificato dal membro fType .
Quando si usa con la funzione SetMenuItemInfo , questo membro deve contenere un valore il cui tipo è specificato dal membro fType .
dwTypeData viene usato solo se il flag MIIM_STRING è impostato nel membro fMask
cch
Tipo: UINT
Lunghezza del testo della voce di menu, in caratteri, quando vengono ricevute informazioni su una voce di menu del tipo di MFT_STRING . Tuttavia, cch viene usato solo se il flag MIIM_TYPE è impostato nel membro fMask e è zero in caso contrario. Inoltre, cch viene ignorato quando il contenuto di una voce di menu viene impostato chiamando SetMenuItemInfo.
Si noti che, prima di chiamare GetMenuItemInfo, l'applicazione deve impostare cch sulla lunghezza del buffer a cui punta il membro dwTypeData . Se la voce di menu recuperata è di tipo MFT_STRING (come indicato dal membro fType ), GetMenuItemInfo cambia cch alla lunghezza del testo della voce di menu. Se la voce di menu recuperata è di un altro tipo, GetMenuItemInfo imposta il campo cch su zero.
Il membro cch viene utilizzato quando il flag MIIM_STRING viene impostato nel membro fMask .
hbmpItem
Tipo: HBITMAP
Handle per la bitmap da visualizzare oppure può essere uno dei valori nella tabella seguente. Viene usato quando il flag MIIM_BITMAP viene impostato nel membro fMask .
Valore | Significato |
---|---|
|
Bitmap disegnata dalla finestra proprietaria del menu. L'applicazione deve elaborare i messaggi WM_MEASUREITEM e WM_DRAWITEM . |
|
Pulsante Chiudi per la barra dei menu. |
|
Pulsante di chiusura disabilitato per la barra dei menu. |
|
Pulsante Riduci a icona per la barra dei menu. |
|
Pulsante Riduci a icona disabilitato per la barra dei menu. |
|
Pulsante Ripristina per la barra dei menu. |
|
Pulsante Chiudi per il sottomenu. |
|
Pulsante Ingrandisci per il sottomenu. |
|
Pulsante Riduci a icona per il sottomenu. |
|
Pulsante Ripristina per il sottomenu. |
|
Icona di Windows o l'icona della finestra specificata in dwItemData. |
Commenti
La struttura MENUITEMINFO viene utilizzata con le funzioni GetMenuItemInfo, InsertMenuItem e SetMenuItemInfo .
Il menu può visualizzare le voci usando testo, bitmap o entrambi.
Nota
L'intestazione winuser.h definisce MENUITEMINFO 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 che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Intestazione | winuser.h (include Windows.h) |
Vedi anche
Informazioni concettuali
Riferimento