MOUSE_EVENT_RECORD
The MOUSE_EVENT_RECORD
structure is used in a console INPUT_RECORD
typedef struct _MOUSE_EVENT_RECORD { // mer
COORD
dwMousePosition;
DWORD
dwButtonState;
DWORD
dwControlKeyState;
DWORD
dwEventFlags;
} MOUSE_EVENT_RECORD;
Members
dwMousePosition
Specifies the
location of the cursor in terms of the screen buffer s character-cell coordinates.
dwButtonState
Indicates the
status of the mouse buttons. The least significant bit corresponds to the
leftmost mouse button. The next least significant bit corresponds to the
rightmost mouse button. The next bit indicates the next-to-leftmost mouse
button. The bits then correspond left to right to the mouse buttons. A bit is 1
if the button was pressed.
The following constants are defined for the first five mouse buttons:
FROM_LEFT_1ST_BUTTON_PRESSED
RIGHTMOST_BUTTON_PRESSED
FROM_LEFT_2ND_BUTTON_PRESSED
FROM_LEFT_3RD_BUTTON_PRESSED
FROM_LEFT_4TH_BUTTON_PRESSED
dwControlKeyState
Indicates the
state of the control keys. This member can be a combination of the following
values:
Value |
Meaning |
RIGHT_ALT_PRESSED |
The right ALT key is
pressed. |
LEFT_ALT_PRESSED |
The left ALT key is
pressed. |
RIGHT_CTRL_PRESSED |
The right CTRL key is
pressed. |
LEFT_CTRL_PRESSED |
The left CTRL key is
pressed. |
CAPSLOCK_ON |
The CAPS LOCK light
is on. |
ENHANCED_KEY |
The key is
enhanced. |
NUMLOCK_ON |
The NUM LOCK light
is on. |
SCROLLLOCK_ON |
The SCROLL LOCK
light is on. |
SHIFT_PRESSED |
The SHIFT key is
pressed. |
dwEventFlags
Indicates the
type of mouse event. If this value is zero, it indicates a mouse button being
pressed or released. Otherwise, the value is one of the following:
Value |
Meaning |
DOUBLE_CLICK |
The second
click (button press) of a double-click occurred. The first click is returned
as a regular button-press event. |
MOUSE_MOVED |
A change in
mouse position occurred. |
Remarks
Mouse events
are placed in the input buffer when the console is in mouse mode
(ENABLE_MOUSE_INPUT).
Mouse events
are generated whenever the user moves the mouse, or presses or releases one of
the mouse buttons. Mouse events are placed in a console s input buffer only when the console group has the
keyboard focus and the cursor is within the borders of the console s window.
See Also