WM_NCCALCSIZE-meldingen blir sendt når størrelsen og plasseringen av et vindu klientområdet må beregnes. Ved å behandle denne meldingen, kan et program kontrollere innholdet av vinduets klientområdet når størrelsen på eller plasseringen av vinduet endres.
WM_NCCALCSIZE fCalcValidRects = (BOOL) wParam; / / gyldig område flagge lpncsp = lParam (LPNCCALCSIZE_PARAMS); / / størrelse beregningsdata eller lpncsp = lParam (LPRECT); / / nytt vindu koordinerer
Hvis wParam er FALSE, trenger programmet ikke å angi den gyldige delen av klientområdet.
Hvis wParam er USANN, lParam peker til en RECT struktur. Ved registrering inneholder strukturen foreslåtte vinduet rektanglet for vinduet. Ved avslutning, skal strukturen inneholde skjermkoordinater i tilsvarende vindusområdet for klienten.
Hvis parameteren fCalcValidRects er FALSE, skal programmet returnere null.
Hvis fCalcValidRects er TRUE, skal programmet returnere null eller en kombinasjon av følgende verdier:
| Verdi | Betydning |
|---|---|
| WVR_ALIGNTOP, WVR_ALIGNLEFT, WVR_ALIGNBOTTOM, WVR_ALIGNRIGHT | |
| Disse verdiene, som brukes i kombinasjon, angi at klientområdet i vinduet skal være bevart og justert riktig forhold til den nye posisjonen for vinduet. For eksempel vil justere klientområdet til nederste venstre hjørne, returnere verdiene WVR_ALIGNLEFT og WVR_ALIGNBOTTOM. | |
| WVR_HREDRAW, WVR_VREDRAW | |
| Disse verdiene, som brukes i kombinasjon med andre verdier, føre til vinduet til tilbaketrekkes helt hvis klienten rektangel endringene størrelse vannrett eller loddrett. Disse verdiene er lignende klassen-stilene for CS_HREDRAW og CS_VREDRAW. | |
| WVR_REDRAW | |
| Denne verdien gjør at hele vinduet til tilbaketrekkes. Det er en kombinasjon av WVR_HREDRAW og WVR_VREDRAW-verdier. | |
| WVR_VALIDRECTS | |
| Denne verdien angir som, ved retur fra WM_NCCALCSIZE, rektangler som er angitt av rgrc [1] , og rgrc [2] medlemmer av NCCALCSIZE_PARAMS -strukturen inneholder gyldig mål og kilde området rektangler, henholdsvis. Systemet kombinerer disse rektangler til å beregne området av vinduet for å bli bevart. Systemet kopierer noen del av vinduet bildet som er innenfor rektanglet kilde og klipp bildet til rektangelet som er målet. Begge rektangler er i overordnede-forhold eller i skjermen-forhold-koordinater. | |
| Denne returverdien tillater et program å implementere mer forseggjort klientområdet bevaring strategier, som Sentrering eller bevare et delsett av klientområdet. | |
Hvis fCalcValidRects er TRUE, og et program returnerer null, gamle klientområdet er bevart, og er på linje med det øverste venstre hjørnet av nye klientområdet.
Vinduet kan tilbaketrekkes, avhengig av om klasse i stilen CS_HREDRAW eller CS_VREDRAW er angitt. Dette er standardverdien, bakoverkompatible behandling av denne meldingen av funksjonen DefWindowProc (i tillegg til vanlig klient rektangel beregning som er beskrevet i tabellen ovenfor).
nbsp; Windows &NT: krever versjon 3.1 eller senere.
Windows:Krever Windows 95 eller senere.
Windows CE:Som ikke støttes.
Topptekst:Deklarert i winuser.h.
Oversikt over Windows, vindusmeldinger, DefWindowProc, MoveWindow, SetWindowPos, NCCALCSIZE_PARAMS, RECT