Muis Capture

Het systeem berichten meestal een muis bericht aan het venster dat de cursor hotspot bevat op het moment dat een muisgebeurtenis optreedt. Een toepassing kan dit gedrag wijzigen met behulp van de SetCapture functie om berichten te routeren muis naar een specifieke venster. Het venster ontvangt alle muis berichten, totdat de toepassing roept de functie ReleaseCapture of geeft u een ander venster vastleggen, of totdat de gebruiker een venster gemaakt door een andere thread.

Wanneer de muis wijzigingen vast te leggen, signaal het systeem een WM_CAPTURECHANGED naar de venster dat het vangen van de muis verliezen is. De parameter lParam van het bericht van de bestandsingang van het venster dat is het verkrijgen van het vangen van de muis.

Alleen het voorgrondvenster kunt Muisinvoer vastleggen. Wanneer een achtergrond venster probeert te vangen muisinvoer, ontvangt deze berichten alleen voor muisgebeurtenissen die plaatsvinden als de cursor hotspot binnen het zichtbare gedeelte van het venster is.

Muisinvoer vastleggen is handig als een venster alle muisinvoer, ontvangen moet zelfs wanneer de cursor buiten het venster. Een toepassing houdt bijvoorbeeld meestal de cursorpositie na een muis "knop ingedrukt" gebeurtenis, achter de cursor tot een "knop omhoog" gebeurtenis zich voordoet. Als een toepassing niet muisinvoer heeft gevangen en de gebruiker de muis buiten het venster loslaat, ontvangt het venster de knop omhoog bericht niet.

Een thread kunt de functie GetCapture gebruiken om te bepalen of een van haar windows de muis heeft vastgelegd. Als een van de thread's windows de muis heeft gevangen, haalt GetCapture de handle van het venster.

Index