MOUSE_EVENT_RECORD
Структура
MOUSE_EVENT_RECORD
используется
консольной структурой INPUT_RECORD
для получения сообщений мыши.
typedef struct _MOUSE_EVENT_RECORD { COORD dwMousePosition; DWORD dwButtonState; DWORD dwControlKeyState; DWORD dwEventFlags; } MOUSE_EVENT_RECORD;
Элементы
dwMousePosition
Положение курсора в координатах экранного буфера (структура COORD).
dwButtonState
Состояние клавиш мыши.
Младший бит соответствует самой левой кнопке, следующий - самой правой,
Следующий бит - следующая за левой клавиша.
Далее биты соответствуют клавишам слева направо. Если бит установлен - клавиша нажата.
Определены следующие константы для первых пяти клавиш мыши:
FROM_LEFT_1ST_BUTTON_PRESSED
RIGHTMOST_BUTTON_PRESSED
FROM_LEFT_2ND_BUTTON_PRESSED
FROM_LEFT_3RD_BUTTON_PRESSED
FROM_LEFT_4TH_BUTTON_PRESSED
Определены следующие константы для первых пяти клавиш мыши:
FROM_LEFT_1ST_BUTTON_PRESSED
RIGHTMOST_BUTTON_PRESSED
FROM_LEFT_2ND_BUTTON_PRESSED
FROM_LEFT_3RD_BUTTON_PRESSED
FROM_LEFT_4TH_BUTTON_PRESSED
dwControlKeyState
Состояние управляющих клавиш. Может быть комбинацией следующих значений:
Клавиша | Описание |
---|---|
CAPSLOCK_ON | CAPS LOCK включён. |
ENHANCED_KEY | Клавиша расширенная. |
LEFT_ALT_PRESSED | Левый ALT нажат. |
LEFT_CTRL_PRESSED | Левый CTRL нажат. |
NUMLOCK_ON | NUM LOCK включён. |
RIGHT_ALT_PRESSED | Правый ALT нажат. |
RIGHT_CTRL_PRESSED | Правый CTRL нажат. |
SCROLLLOCK_ON | SCROLL LOCK включён. |
SHIFT_PRESSED | Клавиша SHIFT нажата. |
dwEventFlags
Тип сообщения мыши. Если ноль, то кнопка мыши была нажата или отпущена.
Иначе одно из следующих значений:
Событие | Описание |
---|---|
DOUBLE_CLICK | Второе нажатие при двойном щелчке (первое нажатие приходит как обычное сообщение). |
MOUSE_MOVED | Позиция мыши изменилась. |
MOUSE_WHEELED | Устанавливается при вертикальной прокрутке колёсика
на мышке. Если установлен этот флаг, то в старшем слове dwButtonState содержтся
значение, кратное WHEEL_DELTA . По умолчанию это значение равно 120, но может
изменяться в зависимости от драйвера мыши. |
MOUSE_HWHEELED | Windows Vista/2008/7: Устанавливается при горизонтальной прокрутке колёсика
на мышке. Если установлен этот флаг, то в старшем слове dwButtonState содержтся
значение, кратное WHEEL_DELTA . По умолчанию это значение равно 120, но может
изменяться в зависимости от драйвера мыши. |
Замечания
Сообщения мыши помещаются во входной буфер, когда консоль имеет установленный
флаг
Сообщения мыши посылаются в буфер, только если консоль имеет активный клавиатурный фокус и курсор находится в границах консольного окна.
ENABLE_MOUSE_INPUT
.Сообщения мыши посылаются в буфер, только если консоль имеет активный клавиатурный фокус и курсор находится в границах консольного окна.
Смотрите также: