Hurtigvalg og menyer

Ved hjelp av et hurtigvalg er det samme som å velge en meny-innstilling: begge handlingene fører til at systemet sende en WM_COMMAND - eller WM_SYSCOMMAND -melding til tilsvarende vindusprosedyre. WM_COMMAND meldingen inneholder en identifikator som vinduet prosedyren undersøker for å finne kilden av meldingen. Hvis et hurtigvalg generert WM_COMMAND meldingen, er identifikatoren akseleratoren. På samme måte, hvis et menyelement generert WM_COMMAND meldingen, identifikatoren er at av menyelementet. Fordi et hurtigvalg gir en snarvei for å velge en kommando fra en meny, tilordner et program vanligvis samme identifikatoren til akseleratoren og det tilsvarende menyelementet.

Et program behandler meldingen accelerator WM_COMMAND på nøyaktig samme måte som den tilhørende menyen elementet WM_COMMAND meldingen. WM_COMMAND meldingen inneholder imidlertid et flagg som angir om meldingen kommer fra et hurtigvalg eller et menyelement, i tilfelle akseleratorer må behandles annerledes fra deres tilsvarende menyelementer. WM_SYSCOMMAND meldingen inneholder ikke dette flagget.

Identifikatoren angir om et hurtigvalg genererer en melding som WM_COMMAND eller WM_SYSCOMMAND. Hvis identifikatoren har samme verdi som et menyelement i System-menyen, genererer akseleratoren en WM_SYSCOMMAND-melding. Ellers genererer akseleratoren en WM_COMMAND-melding.

Hvis et hurtigvalg er den samme identifikatoren som et menyelement og menyelementet er grå eller deaktivert, akseleratoren er deaktivert, og genererer ikke en WM_COMMAND- eller WM_SYSCOMMAND-melding. Også, et hurtigvalg genererer ikke en kommandomelding Hvis det tilhørende vinduet er minimert.

Når brukeren bruker et hurtigvalg som tilsvarer et menyelement, mottar vinduet prosedyren WM_INITMENU og WM_INITMENUPOPUP -meldinger som om brukeren hadde valgt en meny-innstilling. Hvis du vil ha informasjon om hvordan du behandler disse meldingene, se menyer.

Et hurtigvalg som tilsvarer et menyelement skal tas med i teksten i en meny-innstilling.