Dela via


Musens inmatning

I det här avsnittet beskrivs hur systemet tillhandahåller mus-input till din applikation och hur applikationen tar emot och bearbetar denna input.

I det här avsnittet

Ämne Beskrivning
Om musindata
I det här avsnittet diskuteras musinmatning.
Använda Musinmatning
Det här avsnittet beskriver uppgifter som är associerade med musanvändning.
referens för musindata

Funktioner

Namn Beskrivning
_TrackMouseEvent Publicerar meddelanden när muspekaren lämnar ett fönster eller hovrar över ett fönster under en angiven tidsperiod. Den här funktionen anropar TrackMouseEvent om den finns, annars emulerar den den.
BlockInput Blockerar tangentbords- och musindatahändelser från att nå program.
DragDetect Fångar upp musen och spårar dess rörelse tills användaren släpper den vänstra knappen, trycker på ESC-tangenten eller flyttar musen utanför dragrektangeln runt den angivna punkten. Bredden och höjden på dragrektangeln anges av värdena SM_CXDRAG och SM_CYDRAG som returneras av funktionen GetSystemMetrics.
EnableMouseInPointer Gör att musen kan fungera som en pekenhet.
EnableWindow Aktiverar eller inaktiverar mus- och tangentbordsindata till det angivna fönstret eller kontrollen. När indata har inaktiverats tar fönstret inte emot indata, till exempel musklickningar och tangenttryckningar. När indata är aktiverat tar fönstret emot alla indata.
GetCapture Hämtar ett handtag till fönstret (om det finns) som har fångat musen. Det är bara ett fönster i taget som kan fånga musen. det här fönstret tar emot musindata oavsett om markören ligger inom dess kantlinjer eller inte.
GetDoubleClickTime Hämtar aktuell dubbelklickstid för musen. Ett dubbelklick är en serie med två klick på musknappen, den andra sker inom en angiven tid efter den första. Dubbelklickstiden är det maximala antalet millisekunder som kan inträffa mellan det första och andra klicket i ett dubbelklick.
GetMouseMovePointsEx Hämtar en historik med upp till 64 tidigare koordinater för musen eller pennan.
IsWindowEnabled Avgör om det angivna fönstret är aktiverat för mus- och tangentbordsindata.
SläppFångst Släpper musfångst från ett fönster i den aktuella tråden och återställer normal bearbetning av musinmatning. Ett fönster som har fångat musen tar emot alla musindata, oavsett markörens position, förutom när en musknapp klickas medan markörens hot spot är i fönstret i en annan tråd.
SendInput Syntetiserar tangenttryckningar, musrörelser och knappklick.
SetCapture Ställer in musfångst till det angivna fönstret som tillhör den nuvarande tråden. SetCapture fångar in musindata antingen när musen är över inspelningsfönstret eller när musknappen trycktes ned medan musen var över inspelningsfönstret och knappen fortfarande är nere. Endast ett fönster i taget kan fånga musen.
Om musmarkören är över ett fönster som skapats av en annan tråd dirigerar systemet endast musindata till det angivna fönstret om en musknapp är nere.
SetDoubleClickTime Anger tiden för dubbelklicka för musen. Ett dubbelklick är en serie med två klick på en musknapp, den andra sker inom en angiven tid efter den första. Dubbelklickstiden är det maximala antalet millisekunder som kan inträffa mellan det första och andra klicket i ett dubbelklick.
SwapMouseButton Byter eller återställer funktionen av vänster- och högerknappens funktioner.
TrackMouseEvent Publicerar meddelanden när muspekaren lämnar ett fönster eller hovrar över ett fönster under en angiven tidsperiod.

Följande funktion är föråldrad.

Funktion Beskrivning
mus_event Syntetiserar musrörelser och knappklickningar.

Meddelanden

Namn Beskrivning
WM_APPCOMMAND Meddelar ett fönster som användaren genererade en programkommandohändelse, till exempel genom att klicka på en programkommandoknapp med musen eller skriva en programkommandonyckel på tangentbordet.
WM_CAPTURECHANGED Skickas till fönstret som förlorar muskontroll.
WM_LBUTTONDBLCLK Postat när användaren dubbelklickar på den vänstra musknappen medan markören är i klientområdet i ett fönster. Om musen inte fångas upp skickas meddelandet till fönstret under markören. Annars skickas meddelandet till fönstret som har fångat musen.
WM_LBUTTONDOWN Postat när användaren trycker på den vänstra musknappen medan markören är i klientområdet i ett fönster. Om musen inte fångas upp skickas meddelandet till fönstret under markören. Annars skickas meddelandet till fönstret som har fångat musen.
WM_LBUTTONUP Postat när användaren släpper den vänstra musknappen medan markören är i klientområdet i ett fönster. Om musen inte fångas upp skickas meddelandet till fönstret under markören. Annars skickas meddelandet till fönstret som har fångat musen.
WM_MBUTTONDBLCLK Postat när användaren dubbelklickar på den mellersta musknappen medan markören är i klientområdet i ett fönster. Om musen inte fångas upp skickas meddelandet till fönstret under markören. Annars skickas meddelandet till fönstret som har fångat musen.
WM_MBUTTONDOWN Postat när användaren trycker på mitten musknappen medan markören är i klientområdet i ett fönster. Om musen inte fångas upp skickas meddelandet till fönstret under markören. Annars skickas meddelandet till fönstret som har fångat musen.
WM_MBUTTONUP Postat när användaren släpper den mellersta musknappen medan markören är i klientområdet i ett fönster. Om musen inte fångas upp skickas meddelandet till fönstret under markören. Annars skickas meddelandet till fönstret som har fångat musen.
WM_MOUSEACTIVATE Skickas när markören är i ett inaktivt fönster och användaren trycker på en musknapp. Det överordnade fönstret tar endast emot det här meddelandet om det underordnade fönstret skickar det till funktionen DefWindowProc.
WM_MOUSEHOVER Skickat till ett fönster när markören svävar över fönstrets klientområde under den tidsperiod som anges i ett tidigare anrop till TrackMouseEvent.
WM_MOUSEHWHEEL Skickas till fokusfönstret när musens vågräta rullningshjul lutas eller roteras. FunktionenDefWindowProcsprider meddelandet till fönstrets överordnade. Det bör inte finnas någon intern vidarebefordran av meddelandet eftersom DefWindowProc sprider det i den överordnade kedjan tills det hittar ett fönster som bearbetar det.
WM_MOUSELEAVE Ett meddelande skickas till ett fönster när markören lämnar klientområdet i fönstret som anges i ett tidigare anrop till TrackMouseEvent.
WM_MOUSEMOVE Postat i ett fönster när markören flyttas. Om musen inte fångas skickas meddelandet till fönstret som innehåller markören. Annars skickas meddelandet till fönstret som har fångat musen.
WM_MOUSEWHEEL Skickas till fokusfönstret när mushjulet roteras. Funktionen DefWindowProc sprider meddelandet till fönstrets överordnade. Det bör inte finnas någon intern vidarebefordran av meddelandet eftersom DefWindowProc sprider det i den överordnade kedjan tills det hittar ett fönster som bearbetar det.
WM_NCHITTEST Skickas till ett fönster för att avgöra vilken del av fönstret som motsvarar en viss skärmkoordinat. Detta kan till exempel inträffa när markören flyttas, när en musknapp trycks eller släpps, eller som svar på ett anrop till en funktion som WindowFromPoint. Om musen inte fångas skickas meddelandet till fönstret under markören. Annars skickas meddelandet till fönstret som har fångat musen.
WM_NCLBUTTONDBLCLK Skickas när användaren dubbelklickar på den vänstra musknappen medan markören är inom icke-klientområdet i ett fönster. Det här meddelandet publiceras i fönstret som innehåller markören. Om ett fönster har fångat musen publiceras inte det här meddelandet.
WM_NCLBUTTONDOWN Skickas när användaren trycker på den vänstra musknappen medan markören är inom det icke-klientområdet i ett fönster. Det här meddelandet publiceras i fönstret som innehåller markören. Om ett fönster har fångat musen publiceras inte det här meddelandet.
WM_NCLBUTTONUP Postas när användaren släpper den vänstra musknappen medan markören är inom icke-klientområdet i ett fönster. Det här meddelandet publiceras i fönstret som innehåller markören. Om ett fönster har fångat musen publiceras inte det här meddelandet.
WM_NCMBUTTONDBLCLK Utges när användaren dubbelklickar på den mellersta musknappen medan markören är inom det icke-klientområdet i ett fönster. Det här meddelandet publiceras i fönstret som innehåller markören. Om ett fönster har fångat musen publiceras inte det här meddelandet.
WM_NCMBUTTONDOWN Skickas när användaren trycker på den mellersta musknappen medan markören befinner sig inom det icke-klientområdet i ett fönster. Det här meddelandet publiceras i fönstret som innehåller markören. Om ett fönster har fångat musen publiceras inte det här meddelandet.
WM_NCMBUTTONUP Skickas när användaren släpper den mellersta musknappen medan markören är inom icke-klientområdet i ett fönster. Det här meddelandet publiceras i fönstret som innehåller markören. Om ett fönster har fångat musen publiceras inte det här meddelandet.
WM_NCMOUSEHOVER Skickas till ett fönster när markören hovrar över icke-klientområdet i fönstret under den tidsperiod som anges i ett tidigare anrop tillTrackMouseEvent.
WM_NCMOUSELEAVE Skickas till ett fönster när markören lämnar det icke-klientområdet i det fönster som angivits i ett tidigare anrop tillTrackMouseEvent.
WM_NCMOUSEMOVE Skickas till ett fönster när markören flyttas inom det icke-klientrelaterade området av fönstret. Det här meddelandet publiceras i fönstret som innehåller markören. Om ett fönster har fångat musen publiceras inte det här meddelandet.
WM_NCRBUTTONDBLCLK Postat när användaren dubbelklickar på höger musknapp medan markören är inom icke-klientområdet i ett fönster. Det här meddelandet publiceras i fönstret som innehåller markören. Om ett fönster har fångat musen publiceras inte det här meddelandet.
WM_NCRBUTTONDOWN Händelsen utlöses när användaren trycker på höger musknapp medan markören befinner sig inom icke-klientområdet i ett fönster. Det här meddelandet publiceras i fönstret som innehåller markören. Om ett fönster har fångat musen publiceras inte det här meddelandet.
WM_NCRBUTTONUP Genereras när användaren släpper den högra musknappen medan markören är inom icke-klientområdet i ett fönster. Det här meddelandet publiceras i fönstret som innehåller markören. Om ett fönster har fångat musen publiceras inte det här meddelandet.
WM_NCXBUTTONDBLCLK Skickas när användaren dubbelklickar på antingen musknapp XBUTTON1 eller XBUTTON2 medan markören är i det icke-klientområdet i ett fönster. Det här meddelandet publiceras i fönstret som innehåller markören. Om ett fönster har fångat musen publiceras inte det här meddelandet.
WM_NCXBUTTONDOWN Registreras när användaren trycker på antingen XBUTTON1 eller XBUTTON2 medan markören är i icke-klientområdet i ett fönster. Det här meddelandet publiceras i fönstret som innehåller markören. Om ett fönster har fångat musen publiceras inte det här meddelandet.
WM_NCXBUTTONUP Publiceras när användaren släpper antingen XBUTTON1 eller XBUTTON2 medan markören är i icke-klientområdet i ett fönster. Det här meddelandet publiceras i fönstret som innehåller markören. Om ett fönster har fångat musen publiceras inte det här meddelandet.
WM_RBUTTONDBLCLK Postat när användaren dubbelklickar på höger musknapp medan markören är i klientområdet i ett fönster. Om musen inte fångas upp skickas meddelandet till fönstret under markören. Annars skickas meddelandet till fönstret som har fångat musen.
WM_RBUTTONDOWN Postat när användaren trycker på höger musknapp medan markören är i klientområdet i ett fönster. Om musen inte fångas upp skickas meddelandet till fönstret under markören. Annars skickas meddelandet till fönstret som har fångat musen.
WM_RBUTTONUP Postat när användaren släpper den högra musknappen medan markören är i klientområdet i ett fönster. Om musen inte fångas upp skickas meddelandet till fönstret under markören. Annars skickas meddelandet till fönstret som har fångat musen.
WM_XBUTTONDBLCLK Postat när användaren dubbelklickar antingen XBUTTON1 eller XBUTTON2 medan markören finns i klientområdet i ett fönster. Om musen inte fångas upp skickas meddelandet till fönstret under markören. Annars skickas meddelandet till fönstret som har fångat musen.
WM_XBUTTONDOWN Publiceras när användaren trycker på antingen XBUTTON1 eller XBUTTON2 medan markören finns i klientområdet i ett fönster. Om musen inte fångas upp skickas meddelandet till fönstret under markören. Annars skickas meddelandet till fönstret som har fångat musen.
WM_XBUTTONUP Publiceras när användaren släpper antingen XBUTTON1 eller XBUTTON2 medan markören finns i klientområdet i ett fönster. Om musen inte fångas upp skickas meddelandet till fönstret under markören. Annars skickas meddelandet till fönstret som har fångat musen.

Strukturer

Namn Beskrivning
HARDWAREINPUT Innehåller information om ett simulerat meddelande som genereras av en annan indataenhet än ett tangentbord eller en mus.
indata Innehåller information som används för att syntetisera indatahändelser som tangenttryckningar, musrörelser och musklickningar.
LASTINPUTINFO Innehåller tiden för den senaste inmatningen.
MOUSEINPUT Innehåller information om en simulerad mushändelse.
MOUSEMOVEPOINT Innehåller information om musens plats i skärmkoordinater.
TRACKMOUSEEVENT Används av funktionen TrackMouseEvent för att spåra när muspekaren lämnar ett fönster eller hovrar över ett fönster under en angiven tidsperiod.