Das System Bucht in der Regel eine Mausmeldung auf das Fenster, das den Cursorhotspot zum Zeitpunkt enthält, die ein Mausereignis tritt ein. Eine Anwendung kann dieses Verhalten ändern, mithilfe der SetCapture -Funktion Maus Nachrichten zu einem bestimmten Fenster. Das Fenster empfängt alle Maus-Nachrichten, bis die Anwendung ruft die Funktion ReleaseCapture oder gibt ein weiteres Fenster "Capture", oder der Benutzer klickt ein Fenster von einem anderen Thread erstellt.
Wenn die Maus erfasst Änderungen, sendet das System eine WM_CAPTURECHANGED -Nachricht an das Fenster, das die Mausauswahl verliert. Der Parameter lParam der Nachricht gibt das Handle des Fensters, das die Mausauswahl gewinnt.
Nur das Vordergrundfenster kann Mauseingaben erfassen. Wenn ein Hintergrundfenster versucht, Mauseingaben erfassen, empfängt er Nachrichten nur für Mausereignisse, die auftreten, wenn den Cursorhotspot innerhalb des sichtbaren Bereichs des Fensters.
Erfassen von Mauseingaben ist nützlich, wenn ein Fenster alle Mauseingaben, empfangen muss, auch wenn der Cursor außerhalb des Fensters bewegt. Beispielsweise verfolgt eine Anwendung in der Regel die Cursorposition nach ein Mausereignis "gedrückt", hinter dem Cursor, bis ein "Taste bis" Ereignis auftritt. Wenn eine Anwendung hat keine Mauseingaben erfasst, und der Benutzer die Maustaste draußen vor dem Fenster loslässt, erhält das Fenster die Schaltfläche Nachricht keine.
Ein Thread kann die GetCapture -Funktion verwenden, um festzustellen, ob eines der Fenster die Maus erfasst hat. Wenn eines der Fenster den Thread die Maus erfasst hat, ruft GetCapture das Handle des Fensters.