MOUSEKEYS structure

Contains information about the MouseKeys accessibility feature. When the MouseKeys feature is active, the user can use the numeric keypad to control the mouse pointer, and to click, double-click, drag, and drop. By pressing NUMLOCK, the user can toggle the numeric keypad between mouse control mode and normal operation.

Syntax


typedef struct _MOUSEKEYS {
  DWORD cbSize;
  DWORD dwFlags;
  DWORD iMaxSpeed;
  DWORD iTimeToMaxSpeed;
  DWORD iCtrlSpeed;
  DWORD dwReserved1;
  DWORD dwReserved2;
} MOUSEKEYS, *LPMOUSEKEYS;

Members

cbSize

Type: DWORD

Specifies the size, in bytes, of this structure.

dwFlags

Type: DWORD

A set of bit-flags that specify properties of the FilterKeys feature. The following bit-flag values are defined:

ValueMeaning
MKF_AVAILABLE
0x00000002

If this flag is set, the MouseKeys feature is available.

MKF_CONFIRMHOTKEY
0x00000008

Windows 95/98, Windows 2000: A confirmation dialog box appears when the MouseKeys feature is activated by using the hot key.

MKF_HOTKEYACTIVE
0x00000004

If this flag is set, the user can turn the MouseKeys feature on and off by using the hot key, which is LEFT ALT+LEFT SHIFT+NUM LOCK.

MKF_HOTKEYSOUND
0x00000010

If this flag is set, the system plays a siren sound when the user turns the MouseKeys feature on or off by using the hot key.

MKF_INDICATOR
0x00000020

Windows 95/98, Windows 2000: A visual indicator is displayed when the MouseKeys feature is on.

MKF_LEFTBUTTONDOWN
0x01000000

Windows 95/98, Windows 2000: The left button is in the "down" state.

MKF_LEFTBUTTONSEL
0x10000000

Windows 95/98, Windows 2000: The user has selected the left button for mouse-button actions.

MKF_MODIFIERS
0x00000040

Windows 95/98, Windows 2000: The CTRL key increases cursor speed by the value specified by the iCtrlSpeed member, and the SHIFT key causes the cursor to delay briefly after moving a single pixel, allowing fine positioning of the cursor. If this value is not specified, the CTRL and SHIFT keys are ignored while the user moves the mouse cursor using the arrow keys.

MKF_MOUSEKEYSON
0x00000001

If this flag is set, the MouseKeys feature is on.

MKF_MOUSEMODE
0x80000000

Windows 95/98, Windows 2000: The system is processing numeric keypad input as mouse commands.

MKF_REPLACENUMBERS
0x00000080

Windows 95/98, Windows 2000: The numeric keypad moves the mouse when the NUM LOCK key is on. If this flag is not specified, the numeric keypad moves the mouse cursor when the NUM LOCK key is off.

MKF_RIGHTBUTTONDOWN
0x02000000

Windows 95/98, Windows 2000: The right button is in the "down" state.

MKF_RIGHTBUTTONSEL
0x20000000

Windows 95/98, Windows 2000: The user has selected the right button for mouse-button actions.

 

iMaxSpeed

Type: DWORD

Specifies the maximum speed the mouse cursor attains when an arrow key is held down.

Windows 95/98: Range checking is not performed.

Windows NT/2000: Valid values are from 10 to 360.

iTimeToMaxSpeed

Type: DWORD

Specifies the length of time, in milliseconds, that it takes for the mouse cursor to reach maximum speed when an arrow key is held down. Valid values are from 1000 to 5000.

iCtrlSpeed

Type: DWORD

Specifies the multiplier to apply to the mouse cursor speed when the user holds down the CTRL key while using the arrow keys to move the cursor. this value is ignored if MKF_MODIFIERS is not set.

dwReserved1

Type: DWORD

This member is reserved for future use. It must be set to zero.

dwReserved2

Type: DWORD

This member is reserved for future use. It must be set to zero.

Remarks

An application uses a MOUSEKEYS structure when calling the SystemParametersInfo function with the uiAction parameter set to the SPI_GETMOUSEKEYS or SPI_SETMOUSEKEYS value. When using SPI_GETMOUSEKEYS, an application must specify the cbSize member of the MOUSEKEYS structure; the SystemParametersInfo function fills the remaining members. An application must specify all structure members when using the SPI_SETMOUSEKEYS value.

If you call SystemParametersInfo with the SPI_SETMOUSEKEYS value, the following flags are ignored:

  • MKF_LEFTBUTTONDOWN
  • MKF_LEFTBUTTONSEL
  • MKF_MOUSEMODE
  • MKF_RIGHTBUTTONDOWN
  • MKF_RIGHTBUTTONSEL

Requirements

Minimum supported client

Windows 2000 Professional [desktop apps only]

Minimum supported server

Windows 2000 Server [desktop apps only]

Header

Winuser.h (include Windows.h)

See also

Accessibility Structures
SystemParametersInfo

 

 

Community Additions

ADD
Show:
© 2014 Microsoft