[Overview][Constants][Types][Classes][Procedures and functions][Variables][Index] | Reference for unit 'Forms' (#lcl)

# KeyDataToShiftState

Converts modifier keys from the LParam in a keyboard message (WM_KEYUP for example) to a TShiftState value.

## Declaration

Source position: forms.pp line 1944

`function KeyDataToShiftState(`
`KeyData: PtrInt`
`):TShiftState;`

## Arguments

`KeyData` |  | PtrInt value with the address for the key data examined in the routine.

## Function result

Set type with the TShiftStateEnum values representing the specified KeyData.

## Description

Calls MsgKeyDataToShiftState in the lclintf.pas unit to get the TShiftState return value.

## See also

KeysToShiftState |  | Converts modifier keys in the LParam for a mouse message to a TShiftState value.
ShiftStateToKeys |  | Converts a shift state into a key state value compatible with the key state of a Windows API LParam.
MsgKeyDataToShiftState |  |
MK_SHIFT |  | A key state constant to represent the shift key, equivalent to ssShift from TShiftState.
MK_CONTROL |  | A key state constant to represent the control key, equivalent to ssCtrl from TShiftState.
MK_LBUTTON |  | A key state constant to represent the left mouse button, equivalent to ssLeft from TShiftState.
MK_RBUTTON |  | A key state constant to represent the right mouse button, equivalent to ssRight from TShiftState.
MK_MBUTTON |  | A key state constant to represent the middle mouse button, equivalent to ssMiddle from TShiftState.
MK_XBUTTON1 |  | A key state constant to represent the first extra mouse button, equivalent to ssExtra1 from TShiftState.
MK_XBUTTON2 |  | A key state constant to represent the second extra mouse button, equivalent to ssExtra2 from TShiftState.
TShiftState