Menyen modifikasjoner

Flere funksjoner kan du endre en meny når den er lastet inn eller opprettet. Disse endringene kan inkludere å legge til eller fjerne menyelementer og endre eksisterende menyelementer.

Hvis du vil legge til et menyelement, kan du bruke funksjonen InsertMenuItem . Du kan bruke SetMenuItemInfo -funksjonen til å endre attributtene for en eksisterende menyelementet. Parameteren lpmii peker til en MENUITEMINFO struktur, som inneholder de nye attributtene og angir hvilke attributter du vil endre. Et menyelement attributtene omfatter sin type, tilstand, identifikator, undermenyen, punktgrafikk, varedata og tekst.

Funksjonene for eldre AppendMenu og InsertMenu kan også brukes til å legge til menyelementer, men nye programmer bør bruke InsertMenuItem. AppendMenu -funksjonen føyer til et menyelement på slutten av en meny eller undermeny; funksjonen InsertMenu setter inn et menyelement på en bestemt posisjon i en meny eller undermeny. Begge funksjonene tillater attributtene for menyelementet angis, inkludert om menyelementet er aktivert, deaktivert, grå, merket eller umerket.

Hvis du vil endre utseendet eller attributtene til en eksisterende menyelementet, bruk ModifyMenu -funksjonen. For eksempel, kan tekststreng eller punktgrafikk på et menyelement være aktivert, deaktivert, grå, merket eller umerket. ModifyMenu -funksjonen erstatter menypunktet med et nytt element.

Hente informasjon om et menyelement, kan du bruke funksjonen GetMenuItemInfo . Parameteren lpmii peker til en MENUITEMINFO struktur, som angir attributtene til å hente og mottar deres gjeldende verdier.

Hvis du vil slette et menyelement fra en meny, kan du bruke funksjonen DeleteMenu eller RemoveMenu . Hvis varen som skal slettes, er en som åpnes en undermeny, sletter DeleteMenu undermenyen tilknyttede forkaste menyen håndtaket og hvordan du frigjør minne som brukes av undermenyen. Funksjonen RemoveMenu sletter et menyelement, men hvis objektet åpnes en undermeny, funksjonen ødelegge ikke undermenyen eller referansen, slik at undermenyen brukes på nytt.

Hvis du vil tegne menylinjen på nytt etter at en menylinje som er endret, kan du bruke funksjonen DrawMenuBar . Ellers blir endringene ikke synlige før systemet tegner over eiervinduet.

Index