Hver gang en musehendelsen inntreffer, sender systemet en WM_NCHITTEST melding til enten vinduet som inneholder markøren aktiveringspunktet eller vinduet som har fanget musen. Systemet bruker denne meldingen for å bestemme om du vil sende en klient området eller nonclient området musen melding. Et program som må motta musebevegelsen og musen knapp meldinger må passere WM_NCHITTEST meldingen i DefWindowProc -funksjon.
LParam -parameteren for WM_NCHITTEST meldingen inneholder skjermkoordinater av markøren aktiveringspunktet. Funksjonen DefWindowProc undersøker koordinatene og returnerer en hit-test-verdi som angir plasseringen av det het flekk. Hit-test-verdien kan være en av følgende verdier.
| Verdi | Plasseringen av hot spot |
|---|---|
| HTBORDER | I grensen av et vindu som ikke har en størrelse kantlinje |
| HTBOTTOM | I den nederste vannrette kantlinjen i et vindu |
| HTBOTTOMLEFT | I nedre venstre hjørne av en vindusramme |
| HTBOTTOMRIGHT | I høyre hjørne av en vindusramme |
| HTCAPTION | I en tittellinje |
| HTCLIENT | I et klient-område |
| HTCLOSE | I Lukk-knappen. |
| HTERROR | På skjermbakgrunnen eller på en delelinjene mellom windows (samme som HTNOWHERE, bortsett fra at funksjonen DefWindowProc produserer en systempip som betyr at en feil) |
| HTGROWBOX | I størrelse-boksen (samme som HTSIZE) |
| HTHELP | I Hjelp-knappen. |
| HTHSCROLL | I et vannrett rullefelt |
| HTLEFT | I den venstre kanten av et vindu |
| HTMENU | I en meny |
| HTMAXBUTTON | I maksimeringsknappen. |
| HTMINBUTTON | I minimeringsknappen. |
| HTNOWHERE | På skjermbakgrunnen eller på en delelinjene mellom windows |
| HTREDUCE | I en Minimer-knapp |
| HTRIGHT | I den høyre kantlinjen i et vindu |
| HTSIZE | I størrelse-boksen (samme som HTGROWBOX) |
| HTSYSMENU | I en systemmenyen eller i en Lukk-knappen i et underordnet vindu |
| HTTOP | I det øvre vannrette banneret av et vindu |
| HTTOPLEFT | I det øvre venstre hjørnet av en vindusramme |
| HTTOPRIGHT | I øvre høyre hjørne av en vindusramme |
| HTTRANSPARENT | I et vindu som er dekket av et annet vindu i samme tråd |
| HTVSCROLL | I det loddrette rullefeltet |
| HTZOOM | I en Maksimer-knappen |
Hvis markøren er i klientområdet for et vindu, returnerer DefWindowProc HTCLIENT hit-test i vinduet prosedyren. Når vinduet prosedyren returnerer denne koden til systemet, systemet konverterer skjermkoordinater av aktiveringspunktet markøren til klient-koordinater, og deretter bokføres riktig klient området musen melding.
Funksjonen DefWindowProc returnerer en av andre hit-test verdier når aktiveringspunktet markøren er i et vindu nonclient området. Når vinduet prosedyren returnerer en av disse verdiene hit-test, posterer systemet en nonclient området musen melding, å plassere verdien hit-test i meldingens wParam parameteren og markørkoordinater i lParam -parameteren.