Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Tato část popisuje, jak systém poskytuje vstup myši do vaší aplikace a jak aplikace přijímá a zpracovává tento vstup.
V této části
| Námět | Popis |
|---|---|
|
o vstupu myši |
Toto téma popisuje vstup myši. |
|
Použití vstupu myši |
Tato část popisuje úkoly spojené se vstupem myši. |
| Referenční myší vstup |
Funkce
| Jméno | Popis |
|---|---|
| _TrackMouseEvent | Publikuje zprávy, když ukazatel myši opustí okno nebo po určitou dobu najede myší na okno. Tato funkce volá TrackMouseEvent, pokud existuje, jinak ji emuluje. |
| BlockInput | Blokuje události vstupu z klávesnice a myši, aby nedosáhly aplikací. |
| DragDetect | Zachytí myš a sleduje jeho pohyb, dokud uživatel nespustí levé tlačítko, stiskne klávesu ESC nebo přesune myš mimo obdélník přetažení kolem zadaného bodu. Šířku a výšku obdélníku přetažení určuje |
| EnableMouseInPointer | Umožňuje, aby myš fungovala jako ukazovací zařízení. |
| PovolitOkno | Povolí nebo zakáže zadávání myši a klávesnice do zadaného okna nebo ovládacího prvku. Když je vstup zakázaný, okno neobdrží vstup, například kliknutí myší a stisknutí kláves. Když je vstup povolený, okno přijme všechny vstupy. |
| GetCapture | Načte úchyt do okna (pokud existuje), který zachytil myš. Myš může zachytit pouze jedno okno najednou; toto okno přijímá vstup myši bez ohledu na to, jestli je kurzor uvnitř jeho ohraničení. |
| GetDoubleClickTime | Načte aktuální čas dvojitého kliknutí myši. Dvojitým kliknutím je řada dvou kliknutí na tlačítko myši, druhá, která se vyskytuje v zadaném čase po prvním. Čas dvojitého kliknutí je maximální počet milisekund, které mohou uplynout mezi prvním a druhým kliknutím dvojitého kliknutí. |
| GetMouseMovePointsEx | Načte historii až 64 předchozích souřadnic myši nebo pera. |
| IsWindowEnabled | Určuje, zda je zadané okno povoleno pro vstup myši a klávesnice. |
| ReleaseCapture | Uvolní zachycení myši z okna v aktuálním vlákně a obnoví normální zpracování vstupu myši. Okno, které zachytilo myš, obdrží veškerý vstup myši bez ohledu na pozici kurzoru, s výjimkou případů, kdy je tlačítko myši kliknuto, zatímco kurzor je v okně jiného vlákna. |
| SendInput | Syntetizuje stisknutí kláves, pohyby myši a kliknutí na tlačítko. |
| SetCapture | Nastaví zachytávání myši na zadané okno, které patří do aktuálního vlákna.
SetCapture zachytává vstup myši, a to buď když je myš nad zachytávaným oknem, nebo když bylo tlačítko myši stisknuto, když byla myš přes zachytané okno a tlačítko je stále dole. Myš může zachytit pouze jedno okno najednou. Pokud je kurzor myši nad oknem vytvořeným jiným vláknem, systém přesměruje vstup myši do zadaného okna pouze v případě, že je tlačítko myši vypnuté. |
| SetDoubleClickTime | Nastaví čas dvojitého kliknutí myši. Dvojitým kliknutím je řada dvou kliknutí na tlačítko myši, druhá se vyskytuje v zadaném čase po prvním. Doba dvojitého kliknutí je maximální počet milisekund, který může uplynout mezi prvním a druhým kliknutím dvojkliku. |
| SwapMouseButton | Obrátí nebo obnoví význam tlačítek myši vlevo a vpravo. |
| TrackMouseEvent | Publikuje zprávy, když ukazatel myši opustí okno nebo po určitou dobu najede myší na okno. |
Následující funkce je zastaralá.
| Funkce | Popis |
|---|---|
| mouse_event | Syntetizuje pohyb myši a kliknutí na tlačítko. |
Upozornění
| Jméno | Popis |
|---|---|
| WM_APPCOMMAND | Upozorní okno, že uživatel vygeneroval událost příkazu aplikace, například kliknutím na příkazové tlačítko aplikace pomocí myši nebo zadáním příkazové klávesy aplikace na klávesnici. |
| WM_CAPTURECHANGED | Odesláno do okna, které ztrácí zachytávání myši. |
| WM_LBUTTONDBLCLK | Publikováno, když uživatel dvakrát klikne na levé tlačítko myši, zatímco kurzor je v klientské oblasti okna. Pokud se myš nezachytí, zpráva se odešle do okna pod kurzorem. V opačném případě se zpráva publikuje do okna, které zachytilo myš. |
| WM_LBUTTONDOWN | Publikováno, když uživatel stiskne levé tlačítko myši, zatímco kurzor je v klientské oblasti okna. Pokud se myš nezachytí, zpráva se odešle do okna pod kurzorem. V opačném případě se zpráva publikuje do okna, které zachytilo myš. |
| WM_LBUTTONUP | Publikováno, když uživatel uvolní levé tlačítko myši, zatímco kurzor je v klientské oblasti okna. Pokud se myš nezachytí, zpráva se odešle do okna pod kurzorem. V opačném případě se zpráva publikuje do okna, které zachytilo myš. |
| WM_MBUTTONDBLCLK | Publikováno, když uživatel dvakrát klikne na prostřední tlačítko myši, zatímco kurzor je v klientské oblasti okna. Pokud se myš nezachytí, zpráva se odešle do okna pod kurzorem. V opačném případě se zpráva publikuje do okna, které zachytilo myš. |
| WM_MBUTTONDOWN | Publikováno, když uživatel stiskne prostřední tlačítko myši, zatímco kurzor je v klientské oblasti okna. Pokud se myš nezachytí, zpráva se odešle do okna pod kurzorem. V opačném případě se zpráva publikuje do okna, které zachytilo myš. |
| WM_MBUTTONUP | Publikováno, když uživatel uvolní prostřední tlačítko myši, zatímco kurzor je v klientské oblasti okna. Pokud se myš nezachytí, zpráva se odešle do okna pod kurzorem. V opačném případě se zpráva publikuje do okna, které zachytilo myš. |
| WM_MOUSEACTIVATE | Odesláno, když je kurzor v neaktivním okně a uživatel stiskne tlačítko myši. Nadřazené okno tuto zprávu obdrží pouze v případě, že ji podřízené okno předá funkci DefWindowProc. |
| WM_MOUSEHOVER | Odesláno do okna, když kurzor najede na klientskou oblast okna po dobu uvedenou v předchozím volání TrackMouseEvent. |
| WM_MOUSEHWHEEL | Odesláno do okna fokusu, když je vodorovné kolečko myši nakloněné nebo otočené. FunkceDefWindowProcrozšíří zprávu do nadřazeného objektu okna. Nemělo by docházet k internímu přeposílání zprávy, protože DefWindowProc ji propaguje po řetězci nadřazených prvků, dokud nenajde okno, které ji zpracovává. |
| WM_MOUSELEAVE | Zpráva je odeslána do okna, když kurzor opustí klientskou oblast okna, které bylo určeno v předchozím volání TrackMouseEvent. |
| WM_MOUSEMOVE | Odesláno do okna, když se kurzor pohne. Pokud není zachycena myš, zpráva se odešle do okna, které obsahuje kurzor. V opačném případě se zpráva publikuje do okna, které zachytilo myš. |
| WM_MOUSEWHEEL | Při otáčení kolečka myši se odešle do okna fokusu. Funkce DefWindowProc rozšíří zprávu do nadřazeného objektu okna. Nemělo by docházet k internímu přeposílání zprávy, protože DefWindowProc ji propaguje po řetězci nadřazených prvků, dokud nenajde okno, které ji zpracovává. |
| WM_NCHITTEST | Odesláno do okna, aby bylo možné určit, jaká část okna odpovídá určité souřadnici obrazovky. K tomu může dojít například, když se kurzor přesune, když je tlačítko myši stisknuto nebo uvolněno, nebo v reakci na volání funkce, jako je WindowFromPoint. Pokud není zachycena myš, zpráva se odešle do okna pod kurzorem. V opačném případě se zpráva odešle do okna, které zachytilo myš. |
| WM_NCLBUTTONDBLCLK | Publikováno, když uživatel dvakrát klikne na levé tlačítko myši, zatímco kurzor je v oblasti mimo klient okna. Tato zpráva se publikuje do okna, které obsahuje kurzor. Pokud okno zachytilo myš, tato zpráva není publikována. |
| WM_NCLBUTTONDOWN | Publikováno, když uživatel stiskne levé tlačítko myši, zatímco kurzor je v oblasti mimo klient okna. Tato zpráva se publikuje do okna, které obsahuje kurzor. Pokud okno zachytilo myš, tato zpráva není publikována. |
| WM_NCLBUTTONUP | Publikováno, když uživatel uvolní levé tlačítko myši, zatímco kurzor je v oblasti nonclient okna. Tato zpráva se publikuje do okna, které obsahuje kurzor. Pokud okno zachytilo myš, tato zpráva není publikována. |
| WM_NCMBUTTONDBLCLK | Publikováno, když uživatel dvakrát klikne na prostřední tlačítko myši, zatímco kurzor je v oblasti mimo klient okna. Tato zpráva se publikuje do okna, které obsahuje kurzor. Pokud okno zachytilo myš, tato zpráva není publikována. |
| WM_NCMBUTTONDOWN | Publikováno, když uživatel stiskne prostřední tlačítko myši, zatímco kurzor je v oblasti mimo klient okna. Tato zpráva se publikuje do okna, které obsahuje kurzor. Pokud okno zachytilo myš, tato zpráva není publikována. |
| WM_NCMBUTTONUP | Publikováno, když uživatel uvolní prostřední tlačítko myši, zatímco kurzor je v oblasti mimo klient okna. Tato zpráva se publikuje do okna, které obsahuje kurzor. Pokud okno zachytilo myš, tato zpráva není publikována. |
| WM_NCMOUSEHOVER | Odesláno do okna, když kurzor přejede neklientskou část okna po dobu uvedenou v předchozím voláníTrackMouseEvent. |
| WM_NCMOUSELEAVE | Zasláno do okna, když kurzor opustí neklientskou oblast okna zadaného v předchozím voláníTrackMouseEvent. |
| WM_NCMOUSEMOVE | Posláno do okna, když se kurzor přesune v neklientské oblasti okna. Tato zpráva se publikuje do okna, které obsahuje kurzor. Pokud okno zachytilo myš, tato zpráva není publikována. |
| WM_NCRBUTTONDBLCLK | Publikováno, když uživatel dvakrát klikne na pravé tlačítko myši, zatímco kurzor je v oblasti mimo klient okna. Tato zpráva se publikuje do okna, které obsahuje kurzor. Pokud okno zachytilo myš, tato zpráva není publikována. |
| WM_NCRBUTTONDOWN | Publikováno, když uživatel stiskne pravé tlačítko myši, zatímco kurzor je v oblasti mimo klient okna. Tato zpráva se publikuje do okna, které obsahuje kurzor. Pokud okno zachytilo myš, tato zpráva není publikována. |
| WM_NCRBUTTONUP | Publikováno, když uživatel uvolní pravé tlačítko myši, zatímco kurzor je v oblasti nonclient okna. Tato zpráva se publikuje do okna, které obsahuje kurzor. Pokud okno zachytilo myš, tato zpráva není publikována. |
| WM_NCXBUTTONDBLCLK | Je signalizováno, když uživatel dvakrát klikne buď na XBUTTON1 nebo XBUTTON2, zatímco je kurzor v neklientské oblasti okna. Tato zpráva se publikuje do okna, které obsahuje kurzor. Pokud okno zachytilo myš, tato zpráva není publikována. |
| WM_NCXBUTTONDOWN | Odesláno, když uživatel stiskne XBUTTON1 nebo XBUTTON2, zatímco kurzor je v neklientské oblasti okna. Tato zpráva se publikuje do okna, které obsahuje kurzor. Pokud okno zachytilo myš, tato zpráva není publikována. |
| WM_NCXBUTTONUP | Vyvoláno, když uživatel uvolní buď XBUTTON1, nebo XBUTTON2, zatímco kurzor je v oblasti neklientské části okna. Tato zpráva se publikuje do okna, které obsahuje kurzor. Pokud okno zachytilo myš, tato zpráva není publikována. |
| WM_RBUTTONDBLCLK | Publikováno, když uživatel dvakrát klikne na pravé tlačítko myši, zatímco kurzor je v klientské oblasti okna. Pokud se myš nezachytí, zpráva se odešle do okna pod kurzorem. V opačném případě se zpráva publikuje do okna, které zachytilo myš. |
| WM_RBUTTONDOWN | Publikováno, když uživatel stiskne pravé tlačítko myši, zatímco kurzor je v klientské oblasti okna. Pokud se myš nezachytí, zpráva se odešle do okna pod kurzorem. V opačném případě se zpráva publikuje do okna, které zachytilo myš. |
| WM_RBUTTONUP | Publikováno, když uživatel uvolní pravé tlačítko myši, zatímco kurzor je v klientské oblasti okna. Pokud se myš nezachytí, zpráva se odešle do okna pod kurzorem. V opačném případě se zpráva publikuje do okna, které zachytilo myš. |
| WM_XBUTTONDBLCLK | Publikováno, když uživatel dvakrát klikne buď XBUTTON1 nebo XBUTTON2, zatímco kurzor je v klientské oblasti okna. Pokud se myš nezachytí, zpráva se odešle do okna pod kurzorem. V opačném případě se zpráva publikuje do okna, které zachytilo myš. |
| WM_XBUTTONDOWN | Publikováno, když uživatel stiskne XBUTTON1 nebo XBUTTON2, zatímco kurzor je v klientské oblasti okna. Pokud se myš nezachytí, zpráva se odešle do okna pod kurzorem. V opačném případě se zpráva publikuje do okna, které zachytilo myš. |
| WM_XBUTTONUP | Publikováno, když uživatel uvolní XBUTTON1 nebo XBUTTON2, zatímco kurzor je v klientské oblasti okna. Pokud se myš nezachytí, zpráva se odešle do okna pod kurzorem. V opačném případě se zpráva publikuje do okna, které zachytilo myš. |
Struktury
| Jméno | Popis |
|---|---|
| HARDWAREINPUT | Obsahuje informace o simulované zprávě generované jiným vstupním zařízením než klávesnicí nebo myší. |
| INPUT | Obsahuje informace používané k syntetizaci vstupních událostí, jako jsou stisknutí kláves, pohyb myši a kliknutí myší. |
| LASTINPUTINFO | Obsahuje čas posledního vstupu. |
| MOUSEINPUT | Obsahuje informace o simulované události myši. |
| MOUSEMOVEPOINT | Obsahuje informace o umístění myši v souřadnicích obrazovky. |
| TRACKMOUSEEVENT | Používáno funkcí TrackMouseEvent ke sledování situací, kdy ukazatel myši opustí okno nebo se pohybuje nad oknem po stanovenou dobu. |