Musen fangst

Posterer systemet vanligvis en mus-melding til vinduet som inneholder aktiveringspunktet markøren på tiden en musehendelsen oppstår. Et program kan endre denne virkemåten ved hjelp av SetCapture -funksjonen til å rute meldinger for musen til et bestemt vindu. Vinduet mottar alle musen meldinger til programmet kaller funksjonen ReleaseCapture eller angir et annet oppfangingsvinduet, eller til brukeren klikker et vindu som er opprettet av en annen tråd.

Når musen fange opp endringer, sender systemet en WM_CAPTURECHANGED melding til vinduet som er å miste musen fangst. Av meldingens lParam -parameteren angir referansen i vinduet som er å få fangst musen.

Bare forgrunnsvindu kan fange mus input. Når et vindu for bakgrunnen forsøker å fange inndata for musen, mottar den meldinger bare for musen hendelser som utløses når aktiveringspunktet markøren er innenfor den synlige delen av vinduet.

Fange mus input er nyttig hvis et vindu må får alle inndata for musen, selv om markøren flyttes utenfor vinduet. For eksempel registrerer en applikasjon vanligvis markørposisjonen etter en mus "knappen ned" hendelse, etter markøren til en "knapp opp"-hendelsen oppstår. Hvis et program ikke har fanget inndata for musen, og brukeren slipper museknappen utenfor vinduet, mottar ikke vinduet knappen opp melding.

En tråd kan bruke GetCapture -funksjonen til å fastslå om en av sine windows har fanget musen. Hvis en av trådens windows har fanget musen, henter GetCapture håndtak i vinduet.

Index