Sdílet prostřednictvím


struktura MOUSE_EVENT_RECORD

Důležité

Tento dokument popisuje funkce konzolové platformy, které už nejsou součástí našeho plánu ekosystému. Tento obsah nedoporučujeme používat v nových produktech, ale v budoucnu budeme nadále podporovat stávající využití. Naše upřednostňované moderní řešení se zaměřuje na sekvence virtuálních terminálů pro zajištění maximální kompatibility ve scénářích napříč platformami. Další informace o tomto rozhodnutí o návrhu najdete v naší klasické konzole vs. dokumentu virtuálního terminálu .

Popisuje vstupní událost myši v konzole INPUT_RECORD struktury.

Syntaxe

typedef struct _MOUSE_EVENT_RECORD {
  COORD dwMousePosition;
  DWORD dwButtonState;
  DWORD dwControlKeyState;
  DWORD dwEventFlags;
} MOUSE_EVENT_RECORD;

Členové

dwMousePosition
Struktura COORD , která obsahuje umístění kurzoru z hlediska souřadnic znakové buňky vyrovnávací paměti konzoly.

dwButtonState
Stav tlačítek myši Nejméně významný bit odpovídá tlačítku myši úplně vlevo. Další nejméně významný bit odpovídá tlačítku myši úplně vpravo. Další bit označuje tlačítko myši úplně vlevo. Bity pak odpovídají tlačítkům myši zleva doprava. Bit je 1, pokud bylo tlačítko stisknuto.

Následující konstanty jsou definovány pro prvních pět tlačítek myši.

Hodnota Význam
FROM_LEFT_1ST_BUTTON_PRESSED 0x0001 Tlačítko myši úplně vlevo.
FROM_LEFT_2ND_BUTTON_PRESSED 0x0004 Druhé tlačítko fom vlevo.
FROM_LEFT_3RD_BUTTON_PRESSED 0x0008 Třetí tlačítko zleva.
FROM_LEFT_4TH_BUTTON_PRESSED 0x0010 Čtvrté tlačítko zleva.
RIGHTMOST_BUTTON_PRESSED 0x0002 Tlačítko myši úplně vpravo.

dwControlKeyState
Stav řídicích kláves. Tento člen může být jedna nebo více následujících hodnot.

Hodnota Význam
CAPSLOCK_ON 0x0080 Světlo CAPS LOCK je zapnuté.
ENHANCED_KEY 0x0100 Klíč je vylepšený. Viz poznámky.
LEFT_ALT_PRESSED 0x0002 Levá klávesa ALT se stiskne.
LEFT_CTRL_PRESSED 0x0008 Levá klávesa CTRL se stiskne.
NUMLOCK_ON 0x0020 Světlo NUM LOCK je zapnuté.
RIGHT_ALT_PRESSED 0x0001 Stisknete pravou klávesu ALT.
RIGHT_CTRL_PRESSED 0x0004 Stisknete pravou klávesu CTRL.
SCROLLLOCK_ON 0x0040 Světlo SCROLL LOCK je zapnuté.
SHIFT_PRESSED 0x0010 Stisknete klávesu SHIFT.

dwEventFlags
Typ události myši. Pokud je tato hodnota nula, značí stisknutí nebo uvolnění tlačítka myši. V opačném případě je tento člen jednou z následujících hodnot.

Hodnota Význam
DOUBLE_CLICK 0x0002 Druhé kliknutí (stisknutí tlačítka) poklikání došlo. První kliknutí se vrátí jako běžná událost stisknutí tlačítka.
MOUSE_HWHEELED 0x0008 Vodorovné kolečko myši bylo přesunuto.

Pokud vysoké slovo dwButtonState člen obsahuje kladnou hodnotu, kolečko bylo otočené doprava. V opačném případě bylo kolečko otočené doleva.
MOUSE_MOVED 0x0001 Došlo ke změně pozice myši.
MOUSE_WHEELED 0x0004 Svislé kolečko myši bylo přesunuto.

Pokud vysoké slovo členu dwButtonState obsahuje kladnou hodnotu, kolo bylo otočené dopředu, mimo uživatele. V opačném případě bylo kolo otočené zpět směrem k uživateli.

Poznámky

Události myši se umístí do vstupní vyrovnávací paměti, když je konzola v režimu myši (ENABLE_MOUSE_INPUT).

Události myši se generují pokaždé, když uživatel přesune myš, nebo stiskne nebo uvolní jedno z tlačítek myši. Události myši se umístí do vstupní vyrovnávací paměti konzoly pouze tehdy, když má skupina konzoly fokus klávesnice a kurzor je uvnitř ohraničení okna konzoly.

Příklady

Příklad najdete v tématu Čtení událostí vyrovnávací paměti vstupu.

Požadavky

   
Minimální podporovaný klient Windows 2000 Professional [jenom desktopové aplikace]
Minimální podporovaný server Windows 2000 Server [jenom desktopové aplikace]
Záhlaví WinConTypes.h (přes WinCon.h, včetně Windows.h)

Viz také

COORD

INPUT_RECORD

PeekConsoleInput

ReadConsoleInput

WriteConsoleInput