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.

Symbolic constant name Value (hexadecimal) Mouse or keyboard equivalent
VK_LBUTTON 01 Left mouse button
VK_RBUTTON 02 Right mouse button
VK_CANCEL 03 Control-break processing
VK_MBUTTON 04 Middle mouse button (three-button mouse)
05–07 Undefined
VK_BACK 08 backspace key
VK_TAB 09 tab key
0A–0B Undefined
VK_CLEAR 0C clear key
VK_RETURN 0D enter key
0E–0F Undefined
VK_SHIFT 10 shift key
VK_CONTROL 11 ctrl key
VK_MENU 12 alt key
VK_PAUSE 13 pause key
VK_CAPITAL 14 caps lock key
15–19 Reserved for Kanji systems
1A Undefined
VK_ESCAPE 1B esc key
1C–1F Reserved for Kanji systems
VK_SPACE 20 spacebar
VK_PRIOR 21 page up key
VK_NEXT 22 page down key
VK_END 23 end key
VK_HOME 24 home key
VK_LEFT 25 left arrow key
VK_UP 26 up arrow key
VK_RIGHT 27 right arrow key
VK_DOWN 28 down arrow key
VK_SELECT 29 select key
2A Original equipment manufacturer (OEM) specific
VK_EXECUTE 2B execute key
VK_SNAPSHOT 2C print screen key
VK_INSERT 2D ins key
VK_DELETE 2E del key
VK_HELP 2F help key
VK_0 30 0 key
VK_1 31 1 key
VK_2 32 2 key
VK_3 33 3 key
VK_4 34 4 key
VK_5 35 5 key
VK_6 36 6 key
VK_7 37 7 key
VK_8 38 8 key
VK_9 39 9 key
3A–40 Undefined
VK_A 41 a key
VK_B 42 b key
VK_C 43 c key
VK_D 44 d key
VK_E 45 e key
VK_F 46 f key
VK_G 47 g key
VK_H 48 h key
VK_I 49 i key
VK_J 4A j key
VK_K 4B k key
VK_L 4C l key
VK_M 4D m key
VK_N 4E n key
VK_O 4F o key
VK_P 50 p key
VK_Q 51 q key
VK_R 52 r key
VK_S 53 s key
VK_T 54 t key
VK_U 55 u key
VK_V 56 v key
VK_W 57 w key
VK_X 58 x key
VK_Y 59 y key
VK_Z 5A z key
VK_LWIN 5B Left Windows key (Microsoft Natural Keyboard)
VK_RWIN 5C Right Windows key (Microsoft Natural Keyboard)
VK_APPS 5D Applications key (Microsoft Natural Keyboard)
5E–5F Undefined
VK_NUMPAD0 60 Numeric keypad 0 key
VK_NUMPAD1 61 Numeric keypad 1 key
VK_NUMPAD2 62 Numeric keypad 2 key
VK_NUMPAD3 63 Numeric keypad 3 key
VK_NUMPAD4 64 Numeric keypad 4 key
VK_NUMPAD5 65 Numeric keypad 5 key
VK_NUMPAD6 66 Numeric keypad 6 key
VK_NUMPAD7 67 Numeric keypad 7 key
VK_NUMPAD8 68 Numeric keypad 8 key
VK_NUMPAD9 69 Numeric keypad 9 key
VK_MULTIPLY 6A Multiply key
VK_ADD 6B Add key
VK_SEPARATOR 6C Separator key
VK_SUBTRACT 6D Subtract key
VK_DECIMAL 6E Decimal key
VK_DIVIDE 6F Divide key
VK_F1 70 f1 key
VK_F2 71 f2 key
VK_F3 72 f3 key
VK_F4 73 f4 key
VK_F5 74 f5 key
VK_F6 75 f6 key
VK_F7 76 f7 key
VK_F8 77 f8 key
VK_F9 78 f9 key
VK_F10 79 f10 key
VK_F11 7A f11 key
VK_F12 7B f12 key
VK_F13 7C f13 key
VK_F14 7D f14 key
VK_F15 7E f15 key
VK_F16 7F f16 key
VK_F17 80H f17 key
VK_F18 81H f18 key
VK_F19 82H f19 key
VK_F20 83H f20 key
VK_F21 84H f21 key
VK_F22 85H f22 key
VK_F23 86H f23 key
VK_F24 87H f24 key
88–8F Unassigned
VK_NUMLOCK 90 num lock key
VK_SCROLL 91 scroll lock key
92–B9 Unassigned
BA–C0 OEM specific
C1–DA Unassigned
DB–E4 OEM specific
E5 Unassigned
E6 OEM specific
E7–E8 Unassigned
E9–F5 OEM specific
VK_ATTN F6 Attn key
VK_CRSEL F7 CrSel key
VK_EXSEL F8 ExSel key
VK_EREOF F9 Erase EOF key
VK_PLAY FA Play key
VK_ZOOM FB Zoom key
VK_NONAME FC Reserved for future use.
VK_PA1 FD PA1 key
VK_OEM_CLEAR FE Clear key