Virtual-Key Codes
The following table shows the symbolic constant names, hexadecimal values, and mouse or keyboard equivalents for
the virtual-key codes used by the system. The codes are listed in numeric order.
Constant/va
Description
lue
Left mouse button
VK_LBUTTO
N
0x01
Right mouse button
VK_RBUTTO
N
0x02
Control-break processing
VK_CANCEL
0x03
Middle mouse button (three-button mouse)
VK_MBUTT
ON
0x04
X1 mouse button
VK_XBUTTO
N1
0x05
X2 mouse button
VK_XBUTTO
N2
0x06
Undefined
-
0x07
BACKSPACE key
VK_BACK
0x08
TAB key
VK_TAB
0x09
Reserved
-
0x0A-0B
CLEAR key
VK_CLEAR
0x0C
ENTER key
VK_RETURN
0x0D
Undefined
-
0x0E-0F
SHIFT key
VK_SHIFT
0x10
CTRL key
VK_CONTR
OL
0x11
ALT key
VK_MENU
0x12
PAUSE key
VK_PAUSE
0x13
CAPS LOCK key
VK_CAPITA
L
0x14
IME Kana mode
VK_KANA
0x15
IME Hanguel mode (maintained for compatibility; use VK_HANGUL)
VK_HANGU
EL
0x15
IME Hangul mode
VK_HANGUL
0x15
Undefined
-
0x16
IME Junja mode
VK_JUNJA
0x17
IME final mode
VK_FINAL
0x18
IME Hanja mode
VK_HANJA
0x19
IME Kanji mode
VK_KANJI
0x19
Undefined
-
0x1A
ESC key
VK_ESCAPE
0x1B
IME convert
VK_CONVER
T
0x1C
IME nonconvert
VK_NONCO
NVERT
0x1D
IME accept
VK_ACCEPT
0x1E
IME mode change request
VK_MODEC
HANGE
0x1F
SPACEBAR
VK_SPACE
0x20
PAGE UP key
VK_PRIOR
0x21
PAGE DOWN key
VK_NEXT
0x22
END key
VK_END
0x23
HOME key
VK_HOME
0x24
LEFT ARROW key
VK_LEFT
0x25
VK_UP UP ARROW key
0x26
RIGHT ARROW key
VK_RIGHT
0x27
DOWN ARROW key
VK_DOWN
0x28
SELECT key
VK_SELECT
0x29
PRINT key
VK_PRINT
0x2A
EXECUTE key
VK_EXECUT
E
0x2B
PRINT SCREEN key
VK_SNAPSH
OT
0x2C
INS key
VK_INSERT
0x2D
DEL key
VK_DELETE
0x2E
HELP key
VK_HELP
0x2F
0 key
0x30
1 key
0x31
2 key
0x32
3 key
0x33
4 key
0x34
5 key
0x35
6 key
0x36
7 key
0x37
8 key
0x38
9 key
0x39
Undefined
-
0x3A-40
A key
0x41
B key
0x42
C key
0x43
D key
0x44
E key
0x45
F key
0x46
G key
0x47
H key
0x48
I key
0x49
J key
0x4A
K key
0x4B
L key
0x4C
M key
0x4D
N key
0x4E
O key
0x4F
P key
0x50
Q key
0x51
R key
0x52
S key
0x53
T key
0x54
U key
0x55
V key
0x56
W key
0x57
X key
0x58
Y key
0x59
Z key
0x5A
Left Windows key (Natural keyboard)
VK_LWIN
0x5B
Right Windows key (Natural keyboard)
VK_RWIN
0x5C
Applications key (Natural keyboard)
VK_APPS
0x5D
Reserved
-
0x5E
Computer Sleep key
VK_SLEEP
0x5F
Numeric keypad 0 key
VK_NUMPA
D0
0x60
Numeric keypad 1 key
VK_NUMPA
D1
0x61
Numeric keypad 2 key
VK_NUMPA
D2
0x62
Numeric keypad 3 key
VK_NUMPA
D3
0x63
Numeric keypad 4 key
VK_NUMPA
D4
0x64
Numeric keypad 5 key
VK_NUMPA
D5
0x65
Numeric keypad 6 key
VK_NUMPA
D6
0x66
Numeric keypad 7 key
VK_NUMPA
D7
0x67
Numeric keypad 8 key
VK_NUMPA
D8
0x68
Numeric keypad 9 key
VK_NUMPA
D9
0x69
Multiply key
VK_MULTIP
LY
0x6A
Add key
VK_ADD
0x6B
Separator key
VK_SEPARA
TOR
0x6C
Subtract key
VK_SUBTRA
CT
0x6D
Decimal key
VK_DECIMA
L
0x6E
Divide key
VK_DIVIDE
0x6F
F1 key
VK_F1
0x70
F2 key
VK_F2
0x71
F3 key
VK_F3
0x72
F4 key
VK_F4
0x73
F5 key
VK_F5
0x74
F6 key
VK_F6
0x75
F7 key
VK_F7
0x76
F8 key
VK_F8
0x77
F9 key
VK_F9
0x78
F10 key
VK_F10
0x79
F11 key
VK_F11
0x7A
F12 key
VK_F12
0x7B
F13 key
VK_F13
0x7C
F14 key
VK_F14
0x7D
F15 key
VK_F15
0x7E
F16 key
VK_F16
0x7F
F17 key
VK_F17
0x80
F18 key
VK_F18
0x81
F19 key
VK_F19
0x82
F20 key
VK_F20
0x83
F21 key
VK_F21
0x84
F22 key
VK_F22
0x85
F23 key
VK_F23
0x86
F24 key
VK_F24
0x87
Unassigned
-
0x88-8F
NUM LOCK key
VK_NUMLO
CK
0x90
SCROLL LOCK key
VK_SCROLL
0x91
OEM specific
0x92-96
Unassigned
-
0x97-9F
Left SHIFT key
VK_LSHIFT
0xA0
Right SHIFT key
VK_RSHIFT
0xA1
Left CONTROL key
VK_LCONTR
OL
0xA2
Right CONTROL key
VK_RCONT
ROL
0xA3
Left MENU key
VK_LMENU
0xA4
Right MENU key
VK_RMENU
0xA5
Browser Back key
VK_BROWS
ER_BACK
0xA6
Browser Forward key
VK_BROWS
ER_FORWA
RD
0xA7
Browser Refresh key
VK_BROWS
ER_REFRES
H
0xA8
Browser Stop key
VK_BROWS
ER_STOP
0xA9
Browser Search key
VK_BROWS
ER_SEARCH
0xAA
Browser Favorites key
VK_BROWS
ER_FAVORI
TES
0xAB
Browser Start and Home key
VK_BROWS
ER_HOME
0xAC
Volume Mute key
VK_VOLUM
E_MUTE
0xAD
Volume Down key
VK_VOLUM
E_DOWN
0xAE
Volume Up key
VK_VOLUM
E_UP
0xAF
Next Track key
VK_MEDIA_
NEXT_TRAC
K
0xB0
Previous Track key
VK_MEDIA_
PREV_TRAC
K
0xB1
Stop Media key
VK_MEDIA_
STOP
0xB2
Play/Pause Media key
VK_MEDIA_
PLAY_PAUS
E
0xB3
Start Mail key
VK_LAUNCH
_MAIL
0xB4
Select Media key
VK_LAUNCH
_MEDIA_SEL
ECT
0xB5
Start Application 1 key
VK_LAUNCH
_APP1
0xB6
Start Application 2 key
VK_LAUNCH
_APP2
0xB7
Reserved
-
0xB8-B9
Used for miscellaneous characters; it can vary by keyboard.
VK_OEM_1
0xBA For the US standard keyboard, the ';:' key
For any country/region, the '+' key
VK_OEM_PL
US
0xBB
For any country/region, the ',' key
VK_OEM_CO
MMA
0xBC
For any country/region, the '-' key
VK_OEM_MI
NUS
0xBD
For any country/region, the '.' key
VK_OEM_PE
RIOD
0xBE
Used for miscellaneous characters; it can vary by keyboard.
VK_OEM_2
0xBF For the US standard keyboard, the '/?' key
Used for miscellaneous characters; it can vary by keyboard.
VK_OEM_3
0xC0
For the US standard keyboard, the '`~' key
Reserved
-
0xC1-D7
Unassigned
-
0xD8-DA
Used for miscellaneous characters; it can vary by keyboard.
VK_OEM_4
0xDB For the US standard keyboard, the '[{' key
Used for miscellaneous characters; it can vary by keyboard.
VK_OEM_5
0xDC For the US standard keyboard, the '\|' key
Used for miscellaneous characters; it can vary by keyboard.
VK_OEM_6
0xDD For the US standard keyboard, the ']}' key
Used for miscellaneous characters; it can vary by keyboard.
VK_OEM_7
0xDE For the US standard keyboard, the 'single-quote/double-quote' key
Used for miscellaneous characters; it can vary by keyboard.
VK_OEM_8
0xDF
Reserved
-
0xE0
OEM specific
0xE1
Either the angle bracket key or the backslash key on the RT 102-key keyboard
VK_OEM_10
2
0xE2
OEM specific
0xE3-E4
IME PROCESS key
VK_PROCES
SKEY
0xE5
OEM specific
0xE6
Used to pass Unicode characters as if they were keystrokes. The VK_PACKET key is the low word of
VK_PACKET a 32-bit Virtual Key value used for non-keyboard input methods. For more information, see Remark
0xE7 in KEYBDINPUT, SendInput, WM_KEYDOWN, and WM_KEYUP
Unassigned
-
0xE8
OEM specific
0xE9-F5
Attn key
VK_ATTN
0xF6
CrSel key
VK_CRSEL
0xF7
ExSel key
VK_EXSEL
0xF8
Erase EOF key
VK_EREOF
0xF9
Play key
VK_PLAY
0xFA
Zoom key
VK_ZOOM
0xFB
Reserved
VK_NONAM
E
0xFC
PA1 key
VK_PA1
0xFD
Clear key
VK_OEM_CL
EAR
0xFE
Requirements
Minimum supported client Windows 2000 Professional [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Header Winuser.h
© 2018 Microsoft