Funksjonen ModifyMenu endrer en eksisterende meny-innstilling. Denne funksjonen brukes til å angi innhold, utseendet og virkemåten til menyelementet.
Funksjonen ModifyMenu har blitt erstattet av funksjonen SetMenuItemInfo . Du kan fortsatt bruke ModifyMenu, men hvis du ikke trenger noen av det utbygget vise egenskaper av SetMenuItemInfo.
BOOL ModifyMenu) HMENU hMnu, / / håndtere-menyenUINTuPosition, / / meny artikkel for å endreUINTuFlags, / / menyelementet flagsUINTuIDNewItem, / / menyen element identifikator eller håndtere å miste-ned / / meny eller undermenyLPCTSTRlpNewItem / / menyen vare innhold);
Verdi | Betydning |
---|---|
MF_BYCOMMAND | Angir at uPosition -parameteren gir identifikator for menyelementet. MF_BYCOMMAND-flagget er standard hvis verken MF_BYCOMMAND eller MF_BYPOSITION-flagget er angitt. |
MF_BYPOSITION | Angir at uPosition -parameteren gir menyelementet nullbasert relative plassering. |
Verdi | Betydning |
---|---|
MF_BITMAP | Inneholder en bitmap håndtak. |
MF_OWNERDRAW | Inneholder en 32-biters verdien som angis av et program som brukes til å vedlikeholde tilleggsdata som er relatert til menyelementet. Verdien er i itemData -medlem av strukturen som vises til i lparam -parameteren for WM_MEASUREITEM eller WM_DRAWITEM -meldinger sendt når menyelementet opprettes eller oppdateres utseendet. |
MF_STRING | Inneholder en peker til en null-terminert streng (standard). |
Hvis funksjonen lykkes, er returverdien ikke-null.
Hvis funksjonen mislykkes, er verdien som returneres Null. Hvis du vil få utvidet feilinformasjon, kan du ringe GetLastError.
Hvis ModifyMenu erstatter et menyelement som åpner en miste-ned meny eller undermeny, funksjonen ødelegger gamle miste-ned meny eller undermeny og frigjør minne som brukes av det.
For at tastatur gasspedalene å arbeide med punktgrafikk eller eieren trukket menyelementer, må eieren av menyen behandle meldingen WM_MENUCHAR. Se Owner-Drawn menyer og WM_MENUCHAR meldingen for mer informasjon.
Programmet må kalle funksjonen DrawMenuBar hver gang endringer på en meny, om menyen er i vindumodus vises. Hvis du vil endre attributtene for eksisterende menyelementer, er det mye raskere å bruke funksjonene CheckMenuItem og EnableMenuItem.
Listen nedenfor beskriver flaggene som kan angis i parameteren uFlags:
Verdi | Betydning |
---|---|
MF_BITMAP | Bruker et punktgrafikkbilde som menyelementet. LpNewItem -parameteren inneholder håndtaket til bitmap. |
MF_BYCOMMAND | Angir at uPosition -parameteren angir identifikatoren til menyelementet (standard). |
MF_BYPOSITION | Angir at uPosition -parameteren angir det nye menyobjektet nullbasert relative plassering. |
MF_CHECKED | Hvis du setter en hake ved siden av elementet. Hvis programmet oppgir hake punktgrafikk (se funksjonen SetMenuItemBitmaps ), vises dette flagget ved siden av menyelementet avmerkede punktgrafikk. |
MF_DISABLED | Deaktiverer menyelementet slik at det kan ikke velges, men dette flagget gray ikke det. |
MF_ENABLED | Aktiverer menyelementet slik at det kan velges, og gjenoppretter det fra den grå tilstanden. |
MF_GRAYED | Deaktiverer menyelementet og grays det slik at det ikke kan velges. |
MF_MENUBARBREAK | Funksjoner den samme som MF_MENUBREAK flagg for en menylinje. For en miste-ned meny, undermeny eller hurtigmeny, er den nye kolonnen atskilt fra kolonnen gammelt med en loddrett linje. |
MF_MENUBREAK | Plasserer elementet på en ny linje (for menylinjer) eller i en ny kolonne (for en miste-ned meny, undermeny eller hurtigmeny) uten å skille kolonner. |
MF_OWNERDRAW | Angir at elementet er en vare som eier-tegnet. Før-menyen vises for første gang, vinduet som eier på menyen, mottar du en WM_MEASUREITEM -melding til å hente bredden og høyden på menyelementet. WM_DRAWITEM meldingen sendes deretter i vinduet prosedyren i eier-vinduet hver gang utseendet til menyelementet må oppdateres. |
MF_POPUP | Angir at menyelementet, åpnes en miste-ned meny eller undermeny. UIDNewItem -parameteren angir du håndtaket for å miste-ned meny eller undermeny. Dette flagget brukes til å legge til et menynavn på en menylinje eller en meny artikkel det åpnes en undermeny til en miste-ned meny, undermeny eller hurtigmeny. |
MF_SEPARATOR | Tegner en vannrette delelinjen. Dette flagget brukes bare i en miste-ned meny, undermeny eller hurtigmeny. Linjen kan ikke være grå, deaktivert eller uthevet. Parameterne lpNewItem og uIDNewItem ignoreres. |
MF_STRING | Angir at menyelementet er en tekststreng, parameteren lpNewItem peker til strengen. |
MF_UNCHECKED | Ikke Plasser en hake ved siden av elementet (standard). Hvis programmet leverer hake punktgrafikk (se funksjonen SetMenuItemBitmaps ), viser dette flagget en ukontrollert punktgrafikk ved siden av menyelementet. |
Følgende rapportgrupper notatflagg kan ikke brukes sammen:
Oversikt over menyene, Menyfunksjoner, AppendMenu, CheckMenuItem, DrawMenuBar, EnableMenuItem, SetMenuItemBitmaps, SetMenuItemInfo, WM_DRAWITEM, WM_MEASUREITEM