Bli kjent med Windows - Del 5 Volume - Windows brukergrensesnitt Innledning Dette er en del 5 av min serie, Bli kjent med Windows. Jeg antar at du har lest alle de tidligere tutorials før dette. Du bør lese tutorials i angitt rekkefølge. I denne delen av serien ser vi på beskjed grunnleggende for vindusklasse prosedyren. Merk: Hvis du ikke kan se koden, eller hvis du tror noe mangler (ødelagt kobling, bilde fraværende), bare kontakte meg på [email protected]. Det er, kontakt meg for den minste problemet du har om hva du leser.
Hendelse En hendelse er en handling som er avhengig av tid. Et vindu fungerer ved å vente på at noe skal skje. Arrangementet vil føre til en melding som skal sendes til vinduet klassen prosedyre (gjennom en kø). Klassen Prosedyren vil behandle meldingen. Meldinger som er felles for alle vinduer skal sendes til standard prosedyre ved klassen prosedyren. Vindu Meldinger Input når vinduet prosedyren som meldinger. Meldingen kan komme fra operativsystemet eller fra programmet.
Systemet genererer en melding på hver inngang hendelse, for eksempel når brukeren skriver på tastaturet, beveger musen, eller klikker en kontroll, for eksempel et rullefelt. Når en bruker endrer størrelsen et vindu, er at et program meldingen. Systemet budskapet når vinduet prosedyren med et sett med fire parametere: et vindu håndtak (hwnd), en melding identifikator (uMsg), og to verdier kalt meldingsparametere (wParam og lParam). Vi så dette i forrige del av serien. Vindushåndtaket identifiserer vinduet som meldingen er ment for.
Så selv om en prosedyre kan være for mange vinduer, meldingen ikke gå til alle vinduene; det går til en identifisert i håndtaket. En meldingsnummer er et navngitt konstant som identifiserer den hensikt av en melding. Det kan være noe lignende, WM_PAINT, som er en identifikator (variabel) som identifiserer et heltall. Når et vindu klasse prosedyre mottar en melding, bruker den meldingen identifikator for å finne ut hvordan de skal behandle meldingen. For eksempel forteller meldingsnummer WM_PAINT vinduet prosedyre at vinduet klientområdet har endret seg og må males.
De to meldingsparametere spesifisere data eller plasseringen av data som brukes av en vindusklasse prosedyre ved behandling av en melding. Betydningen og verdien av meldings parametere avhengig av meldingsnummer (uMsg). En melding parameter er et heltall (forskjellige heltall har ulike betydninger). Når en melding ikke bruker meldingsparametere, de er vanligvis satt t