Delen via


Muisinvoer

In deze sectie wordt beschreven hoe het systeem muisinvoer biedt voor uw toepassing en hoe de toepassing die invoer ontvangt en verwerkt.

In deze sectie

Onderwerp Beschrijving
over muisinvoer
In dit onderwerp wordt de invoer van de muis besproken.
Muisinvoer gebruiken
In deze sectie worden taken behandeld die zijn gekoppeld aan de invoer van de muis.
muisinvoerreferentie

Functies

Naam Beschrijving
_TrackMouseEvent Berichten posten wanneer de muisaanwijzer een venster verlaat of de muisaanwijzer gedurende een bepaalde tijd over een venster beweegt. Met deze functie wordt TrackMouseEvent aangeroepen als deze bestaat, anders wordt deze geëmulatied.
BlockInput- Hiermee voorkomt u dat toetsenbord- en muisinvoer gebeurtenissen toepassingen bereiken.
DragDetect- Legt de muis vast en houdt de beweging bij totdat de gebruiker de linkerknop loslaat, op esc drukt of de muis verplaatst buiten de rechthoek met slepen rond het opgegeven punt. De breedte en hoogte van de rechthoek voor slepen worden opgegeven door de SM_CXDRAG en SM_CYDRAG waarden die worden geretourneerd door de functie GetSystemMetrics.
EnableMouseInPointer- Hiermee kan de muis fungeren als een aanwijsapparaat.
EnableWindow- Hiermee kunt u muis- en toetsenbordinvoer in- of uitschakelen voor het opgegeven venster of besturingselement. Wanneer invoer is uitgeschakeld, ontvangt het venster geen invoer, zoals muisklikken en toetsdrukken. Wanneer invoer is ingeschakeld, ontvangt het venster alle invoer.
GetCapture- Hiermee wordt een ingang opgehaald naar het venster (indien aanwezig) dat de muis heeft vastgelegd. Slechts één venster tegelijk kan de muis vastleggen; dit venster ontvangt muisinvoer, ongeacht of de cursor binnen de randen valt.
GetDoubleClickTime Haalt de huidige dubbelkliktijd voor de muis op. Een dubbelklik is een reeks van twee klikken van de muisknop, de tweede die plaatsvindt binnen een opgegeven tijd na de eerste keer. De dubbelkliktijd is het maximum aantal milliseconden dat kan optreden tussen de eerste en tweede klik van een dubbelklik.
GetMouseMovePointsEx- Haalt een geschiedenis op van maximaal 64 eerdere coördinaten van de muis of pen.
IsWindowEnabled Bepaalt of het opgegeven venster is ingeschakeld voor muis- en toetsenbordinvoer.
ReleaseCapture- Laat de muisopname los vanuit een venster in de huidige thread en herstelt de normale verwerking van de muisinvoer. Een venster dat de muis heeft vastgelegd, ontvangt alle muisinvoer, ongeacht de positie van de cursor, behalve wanneer er op een muisknop wordt geklikt terwijl de cursor-hot spot zich in het venster van een andere thread bevindt.
SendInput- Synthetiseert toetsaanslagen, muisbewegingen en knopklikken.
SetCapture- Hiermee stelt u de muisopname in op het opgegeven venster dat hoort bij de huidige thread. SetCapture legt de muisinvoer vast wanneer de muis over het opnamevenster gaat of wanneer de muisknop werd ingedrukt terwijl de muis over het opnamevenster was en de knop nog steeds omlaag is. Slechts één venster tegelijk kan de muis vastleggen.
Als de muiscursor zich boven een venster bevindt dat door een andere thread is gemaakt, wordt de muisinvoer alleen door het systeem naar het opgegeven venster verplaatst als een muisknop niet beschikbaar is.
SetDoubleClickTime Hiermee stelt u de dubbelkliktijd voor de muis in. Een dubbelklik is een reeks van twee klikken van een muisknop, de tweede die plaatsvindt binnen een opgegeven tijd na de eerste keer. De dubbelkliktijd is het maximum aantal milliseconden dat kan optreden tussen de eerste en tweede klik van een dubbelklik.
SwapMouseButton- Hiermee wordt de betekenis van de linker- en rechtermuisknoppen omgekeerd of hersteld.
TrackMouseEvent- Berichten posten wanneer de muisaanwijzer een venster verlaat of de muisaanwijzer gedurende een bepaalde tijd over een venster beweegt.

De volgende functie is verouderd.

Functie Beschrijving
mouse_event Synthetiseert muisbeweging en knopklikken.

Meldingen

Naam Beschrijving
WM_APPCOMMAND Hiermee wordt een venster aangegeven dat de gebruiker bijvoorbeeld een gebeurtenis voor een toepassingsopdracht heeft gegenereerd door met de muis op een opdrachtknop van een toepassing te klikken of een opdrachttoets voor de toepassing op het toetsenbord te typen.
WM_CAPTURECHANGED Verzonden naar het venster dat de muisopname verliest.
WM_LBUTTONDBLCLK Geplaatst wanneer de gebruiker dubbelklikt op de linkermuisknop terwijl de cursor zich in het clientgebied van een venster bevindt. Als de muis niet wordt vastgelegd, wordt het bericht onder de cursor in het venster geplaatst. Anders wordt het bericht geplaatst in het venster dat de muis heeft vastgelegd.
WM_LBUTTONDOWN Geplaatst wanneer de gebruiker op de linkermuisknop drukt terwijl de cursor zich in het clientgebied van een venster bevindt. Als de muis niet wordt vastgelegd, wordt het bericht onder de cursor in het venster geplaatst. Anders wordt het bericht geplaatst in het venster dat de muis heeft vastgelegd.
WM_LBUTTONUP Geplaatst wanneer de gebruiker de linkermuisknop loslaat terwijl de cursor zich in het clientgebied van een venster bevindt. Als de muis niet wordt vastgelegd, wordt het bericht onder de cursor in het venster geplaatst. Anders wordt het bericht geplaatst in het venster dat de muis heeft vastgelegd.
WM_MBUTTONDBLCLK Geplaatst wanneer de gebruiker dubbelklikt op de middelste muisknop terwijl de cursor zich in het clientgebied van een venster bevindt. Als de muis niet wordt vastgelegd, wordt het bericht onder de cursor in het venster geplaatst. Anders wordt het bericht geplaatst in het venster dat de muis heeft vastgelegd.
WM_MBUTTONDOWN Geplaatst wanneer de gebruiker op de middelste muisknop drukt terwijl de cursor zich in het clientgebied van een venster bevindt. Als de muis niet wordt vastgelegd, wordt het bericht onder de cursor in het venster geplaatst. Anders wordt het bericht geplaatst in het venster dat de muis heeft vastgelegd.
WM_MBUTTONUP Geplaatst wanneer de gebruiker de middelste muisknop loslaat terwijl de cursor zich in het clientgebied van een venster bevindt. Als de muis niet wordt vastgelegd, wordt het bericht onder de cursor in het venster geplaatst. Anders wordt het bericht geplaatst in het venster dat de muis heeft vastgelegd.
WM_MOUSEACTIVATE Verzonden wanneer de cursor zich in een inactief venster bevindt en de gebruiker op een muisknop drukt. Het bovenliggende venster ontvangt dit bericht alleen als het onderliggende venster dit doorgeeft aan de functie DefWindowProc.
WM_MOUSEHOVER Geplaatst in een venster wanneer de cursor de muisaanwijzer over het clientgebied van het venster beweegt gedurende de periode die is opgegeven in een voorafgaande aanroep naar TrackMouseEvent.
WM_MOUSEHWHEEL Verzonden naar het focusvenster wanneer het horizontale schuifwiel van de muis wordt gekanteld of gedraaid. De functieDefWindowProchet bericht doorgegeven aan het bovenliggende venster. Er mag geen intern doorsturen van het bericht zijn, omdat DefWindowProc deze doorgeeft aan de bovenliggende keten totdat er een venster wordt gevonden dat het verwerkt.
WM_MOUSELEAVE Geplaatst in een venster wanneer de cursor het clientgebied verlaat van het venster dat is opgegeven in een eerdere aanroep naar TrackMouseEvent.
WM_MOUSEMOVE Geplaatst in een venster wanneer de cursor wordt verplaatst. Als de muis niet wordt vastgelegd, wordt het bericht geplaatst in het venster met de cursor. Anders wordt het bericht geplaatst in het venster dat de muis heeft vastgelegd.
WM_MOUSEWHEEL Verzonden naar het focusvenster wanneer het muiswiel wordt gedraaid. De functie DefWindowProc het bericht doorgegeven aan het bovenliggende venster. Er mag geen intern doorsturen van het bericht zijn, omdat DefWindowProc deze doorgeeft aan de bovenliggende keten totdat er een venster wordt gevonden dat het verwerkt.
WM_NCHITTEST Verzonden naar een venster om te bepalen welk deel van het venster overeenkomt met een bepaald schermcoördinaat. Dit kan bijvoorbeeld gebeuren wanneer de cursor wordt verplaatst, wanneer een muisknop wordt ingedrukt of vrijgegeven, of als reactie op een aanroep naar een functie zoals WindowFromPoint-. Als de muis niet wordt vastgelegd, wordt het bericht verzonden naar het venster onder de cursor. Anders wordt het bericht verzonden naar het venster dat de muis heeft vastgelegd.
WM_NCLBUTTONDBLCLK Geplaatst wanneer de gebruiker dubbelklikt op de linkermuisknop terwijl de cursor zich in het niet-clientgebied van een venster bevindt. Dit bericht wordt geplaatst in het venster met de cursor. Als een venster de muis heeft vastgelegd, wordt dit bericht niet geplaatst.
WM_NCLBUTTONDOWN Geplaatst wanneer de gebruiker op de linkermuisknop drukt terwijl de cursor zich in het niet-clientgebied van een venster bevindt. Dit bericht wordt geplaatst in het venster met de cursor. Als een venster de muis heeft vastgelegd, wordt dit bericht niet geplaatst.
WM_NCLBUTTONUP Geplaatst wanneer de gebruiker de linkermuisknop loslaat terwijl de cursor zich in het niet-clientgebied van een venster bevindt. Dit bericht wordt geplaatst in het venster met de cursor. Als een venster de muis heeft vastgelegd, wordt dit bericht niet geplaatst.
WM_NCMBUTTONDBLCLK Geplaatst wanneer de gebruiker dubbelklikt op de middelste muisknop terwijl de cursor zich in het niet-clientgebied van een venster bevindt. Dit bericht wordt geplaatst in het venster met de cursor. Als een venster de muis heeft vastgelegd, wordt dit bericht niet geplaatst.
WM_NCMBUTTONDOWN Geplaatst wanneer de gebruiker op de middelste muisknop drukt terwijl de cursor zich in het niet-clientgebied van een venster bevindt. Dit bericht wordt geplaatst in het venster met de cursor. Als een venster de muis heeft vastgelegd, wordt dit bericht niet geplaatst.
WM_NCMBUTTONUP Geplaatst wanneer de gebruiker de middelste muisknop loslaat terwijl de cursor zich in het niet-clientgebied van een venster bevindt. Dit bericht wordt geplaatst in het venster met de cursor. Als een venster de muis heeft vastgelegd, wordt dit bericht niet geplaatst.
WM_NCMOUSEHOVER Geplaatst in een venster wanneer de cursor de muisaanwijzer over het niet-clientgebied van het venster beweegt gedurende de periode die is opgegeven in een voorafgaande aanroep naarTrackMouseEvent.
WM_NCMOUSELEAVE Geplaatst in een venster wanneer de cursor het niet-clientgebied verlaat van het venster dat is opgegeven in een eerdere aanroep naarTrackMouseEvent.
WM_NCMOUSEMOVE Geplaatst in een venster wanneer de cursor binnen het niet-clientgebied van het venster wordt verplaatst. Dit bericht wordt geplaatst in het venster met de cursor. Als een venster de muis heeft vastgelegd, wordt dit bericht niet geplaatst.
WM_NCRBUTTONDBLCLK Geplaatst wanneer de gebruiker dubbelklikt op de rechtermuisknop terwijl de cursor zich in het niet-clientgebied van een venster bevindt. Dit bericht wordt geplaatst in het venster met de cursor. Als een venster de muis heeft vastgelegd, wordt dit bericht niet geplaatst.
WM_NCRBUTTONDOWN Geplaatst wanneer de gebruiker op de rechtermuisknop drukt terwijl de cursor zich in het niet-clientgebied van een venster bevindt. Dit bericht wordt geplaatst in het venster met de cursor. Als een venster de muis heeft vastgelegd, wordt dit bericht niet geplaatst.
WM_NCRBUTTONUP Geplaatst wanneer de gebruiker de rechtermuisknop loslaat terwijl de cursor zich in het niet-clientgebied van een venster bevindt. Dit bericht wordt geplaatst in het venster met de cursor. Als een venster de muis heeft vastgelegd, wordt dit bericht niet geplaatst.
WM_NCXBUTTONDBLCLK Geplaatst wanneer de gebruiker dubbelklikt op XBUTTON1 of XBUTTON2 terwijl de cursor zich in het niet-clientgebied van een venster bevindt. Dit bericht wordt geplaatst in het venster met de cursor. Als een venster de muis heeft vastgelegd, wordt dit bericht niet geplaatst.
WM_NCXBUTTONDOWN Geplaatst wanneer de gebruiker op XBUTTON1 of XBUTTON2 drukt terwijl de cursor zich in het niet-clientgebied van een venster bevindt. Dit bericht wordt geplaatst in het venster met de cursor. Als een venster de muis heeft vastgelegd, wordt dit bericht niet geplaatst.
WM_NCXBUTTONUP Geplaatst wanneer de gebruiker XBUTTON1 of XBUTTON2 vrijgeeft terwijl de cursor zich in het niet-clientgebied van een venster bevindt. Dit bericht wordt geplaatst in het venster met de cursor. Als een venster de muis heeft vastgelegd, wordt dit bericht niet geplaatst.
WM_RBUTTONDBLCLK Geplaatst wanneer de gebruiker dubbelklikt op de rechtermuisknop terwijl de cursor zich in het clientgebied van een venster bevindt. Als de muis niet wordt vastgelegd, wordt het bericht onder de cursor in het venster geplaatst. Anders wordt het bericht geplaatst in het venster dat de muis heeft vastgelegd.
WM_RBUTTONDOWN Geplaatst wanneer de gebruiker op de rechtermuisknop drukt terwijl de cursor zich in het clientgebied van een venster bevindt. Als de muis niet wordt vastgelegd, wordt het bericht onder de cursor in het venster geplaatst. Anders wordt het bericht geplaatst in het venster dat de muis heeft vastgelegd.
WM_RBUTTONUP Geplaatst wanneer de gebruiker de rechtermuisknop loslaat terwijl de cursor zich in het clientgebied van een venster bevindt. Als de muis niet wordt vastgelegd, wordt het bericht onder de cursor in het venster geplaatst. Anders wordt het bericht geplaatst in het venster dat de muis heeft vastgelegd.
WM_XBUTTONDBLCLK Geplaatst wanneer de gebruiker dubbelklikt op XBUTTON1 of XBUTTON2 terwijl de cursor zich in het clientgebied van een venster bevindt. Als de muis niet wordt vastgelegd, wordt het bericht onder de cursor in het venster geplaatst. Anders wordt het bericht geplaatst in het venster dat de muis heeft vastgelegd.
WM_XBUTTONDOWN Geplaatst wanneer de gebruiker op XBUTTON1 of XBUTTON2 drukt terwijl de cursor zich in het clientgebied van een venster bevindt. Als de muis niet wordt vastgelegd, wordt het bericht onder de cursor in het venster geplaatst. Anders wordt het bericht geplaatst in het venster dat de muis heeft vastgelegd.
WM_XBUTTONUP Geplaatst wanneer de gebruiker XBUTTON1 of XBUTTON2 vrijgeeft terwijl de cursor zich in het clientgebied van een venster bevindt. Als de muis niet wordt vastgelegd, wordt het bericht onder de cursor in het venster geplaatst. Anders wordt het bericht geplaatst in het venster dat de muis heeft vastgelegd.

Structuren

Naam Beschrijving
HARDWAREINPUT- Bevat informatie over een gesimuleerd bericht dat wordt gegenereerd door een ander invoerapparaat dan een toetsenbord of muis.
INPUT- Bevat informatie die wordt gebruikt voor het synthetiseren van invoerevenementen, zoals toetsaanslagen, muisbewegingen en muisklikken.
LASTINPUTINFO- Bevat de tijd van de laatste invoer.
MOUSEINPUT- Bevat informatie over een gesimuleerde muisgebeurtenis.
MOUSEMOVEPOINT- Bevat informatie over de locatie van de muis in schermcoördinaten.
TRACKMOUSEEVENT- Wordt gebruikt door de functie TrackMouseEvent om bij te houden wanneer de muisaanwijzer een venster verlaat of een venster gedurende een bepaalde tijd aanwijst.