The following table shows the symbolic constant names, decimal 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 (decimal) |
Mouse or keyboard equivalent |
---|---|---|
VK_LBUTTON | 1 | Left mouse button |
VK_RBUTTON | 2 | Right mouse button |
VK_CANCEL | 3 | Control-break processing |
VK_MBUTTON | 4 | Middle mouse button (three-button mouse) |
VK_XBUTTON1 | 5 | Windows 2000: X1 mouse button |
VK_XBUTTON2 | 6 | Windows 2000: X2 mouse button |
| 7 | Undefined |
VK_BACK | 8 | BACKSPACE key |
VK_TAB | 9 | TAB key |
| 1011 | Reserved |
VK_CLEAR | 12 | CLEAR key |
VK_RETURN | 13 | ENTER key |
| 1415 | Undefined |
VK_SHIFT | 16 | SHIFT key |
VK_CONTROL | 17 | CTRL key |
VK_MENU | 18 | ALT key |
VK_PAUSE | 19 | PAUSE key |
VK_CAPITAL | 20 | CAPS LOCK key |
VK_KANA | 21 | IME Kana mode |
VK_HANGUEL | 21 | IME Hanguel mode (maintained for compatibility; use VK_HANGUL) |
VK_HANGUL | 21 | IME Hangul mode |
| 22 | Undefined |
VK_JUNJA | 23 | IME Junja mode |
VK_FINAL | 24 | IME final mode |
VK_HANJA | 25 | IME Hanja mode |
VK_KANJI | 25 | IME Kanji mode |
| 26 | Undefined |
VK_ESCAPE | 27 | ESC key |
VK_CONVERT | 28 | IME convert |
VK_NONCONVERT | 29 | IME nonconvert |
VK_ACCEPT | 30 | IME accept |
VK_MODECHANGE | 31 | IME mode change request |
VK_SPACE | 32 | SPACEBAR |
VK_PRIOR | 33 | PAGE UP key |
VK_NEXT | 34 | PAGE DOWN key |
VK_END | 35 | END key |
VK_HOME | 36 | HOME key |
VK_LEFT | 37 | LEFT ARROW key |
VK_UP | 38 | UP ARROW key |
VK_RIGHT | 39 | RIGHT ARROW key |
VK_DOWN | 40 | DOWN ARROW key |
VK_SELECT | 41 | SELECT key |
VK_PRINT | 42 | PRINT key |
VK_EXECUTE | 43 | EXECUTE key |
VK_SNAPSHOT | 44 | PRINT SCREEN key |
VK_INSERT | 45 | INS key |
VK_DELETE | 46 | DEL key |
VK_HELP | 47 | HELP key |
48 | 0 key | |
49 | 1 key | |
50 | 2 key | |
51 | 3 key | |
52 | 4 key | |
53 | 5 key | |
54 | 6 key | |
55 | 7 key | |
56 | 8 key | |
57 | 9 key | |
| 5864 | Undefined |
65 | A key | |
66 | B key | |
67 | C key | |
68 | D key | |
69 | E key | |
70 | F key | |
71 | G key | |
72 | H key | |
73 | I key | |
74 | J key | |
75 | K key | |
76 | L key | |
77 | M key | |
78 | N key | |
79 | O key | |
80 | P key | |
81 | Q key | |
82 | R key | |
83 | S key | |
84 | T key | |
85 | U key | |
86 | V key | |
87 | W key | |
88 | X key | |
89 | Y key | |
90 | Z key | |
VK_LWIN | 91 | Left Windows key (Microsoftฎ Naturalฎ keyboard) |
VK_RWIN | 92 | Right Windows key (Natural keyboard) |
VK_APPS | 93 | Applications key (Natural keyboard) |
| 94 | Reserved |
VK_SLEEP | 95 | Computer Sleep key |
VK_NUMPAD0 | 96 | Numeric keypad 0 key |
VK_NUMPAD1 | 97 | Numeric keypad 1 key |
VK_NUMPAD2 | 98 | Numeric keypad 2 key |
VK_NUMPAD3 | 99 | Numeric keypad 3 key |
VK_NUMPAD4 | 100 | Numeric keypad 4 key |
VK_NUMPAD5 | 101 | Numeric keypad 5 key |
VK_NUMPAD6 | 102 | Numeric keypad 6 key |
VK_NUMPAD7 | 103 | Numeric keypad 7 key |
VK_NUMPAD8 | 104 | Numeric keypad 8 key |
VK_NUMPAD9 | 105 | Numeric keypad 9 key |
VK_MULTIPLY | 106 | Multiply key |
VK_ADD | 107 | Add key |
VK_SEPARATOR | 108 | Separator key |
VK_SUBTRACT | 109 | Subtract key |
VK_DECIMAL | 110 | Decimal key |
VK_DIVIDE | 111 | Divide key |
VK_F1 | 112 | F1 key |
VK_F2 | 113 | F2 key |
VK_F3 | 114 | F3 key |
VK_F4 | 115 | F4 key |
VK_F5 | 116 | F5 key |
VK_F6 | 117 | F6 key |
VK_F7 | 118 | F7 key |
VK_F8 | 119 | F8 key |
VK_F9 | 120 | F9 key |
VK_F10 | 121 | F10 key |
VK_F11 | 122 | F11 key |
VK_F12 | 123 | F12 key |
VK_F13 | 124 | F13 key |
VK_F14 | 125 | F14 key |
VK_F15 | 126 | F15 key |
VK_F16 | 127 | F16 key |
VK_F17 | 128H | F17 key |
VK_F18 | 129H | F18 key |
VK_F19 | 130H | F19 key |
VK_F20 | 131H | F20 key |
VK_F21 | 132H | F21 key |
VK_F22 | 133H | F22 key |
VK_F23 | 134H | F23 key |
VK_F24 | 135H | F24 key |
| 136143 | Unassigned |
VK_NUMLOCK | 144 | NUM LOCK key |
VK_SCROLL | 145 | SCROLL LOCK key |
146150 | OEM specific | |
| 151159 | Unassigned |
VK_LSHIFT | 160 | Left SHIFT key |
VK_RSHIFT | 161 | Right SHIFT key |
VK_LCONTROL | 162 | Left CONTROL key |
VK_RCONTROL | 163 | Right CONTROL key |
VK_LMENU | 164 | Left MENU key |
VK_RMENU | 165 | Right MENU key |
VK_BROWSER_BACK | 166 | Windows 2000: Browser Back key |
VK_BROWSER_FORWARD | 167 | Windows 2000: Browser Forward key |
VK_BROWSER_REFRESH | 168 | Windows 2000: Browser Refresh key |
VK_BROWSER_STOP | 169 | Windows 2000: Browser Stop key |
VK_BROWSER_SEARCH | 170 | Windows 2000: Browser Search key |
VK_BROWSER_FAVORITES | 171 | Windows 2000: Browser Favorites key |
VK_BROWSER_HOME | 172 | Windows 2000: Browser Start and Home key |
VK_VOLUME_MUTE | 173 | Windows 2000: Volume Mute key |
VK_VOLUME_DOWN | 174 | Windows 2000: Volume Down key |
VK_VOLUME_UP | 175 | Windows 2000: Volume Up key |
VK_MEDIA_NEXT_TRACK | 176 | Windows 2000: Next Track key |
VK_MEDIA_PREV_TRACK | 177 | Windows 2000: Previous Track key |
VK_MEDIA_STOP | 178 | Windows 2000: Stop Media key |
VK_MEDIA_PLAY_PAUSE | 179 | Windows 2000: Play/Pause Media key |
VK_LAUNCH_MAIL | 180 | Windows 2000: Start Mail key |
VK_LAUNCH_MEDIA_SELECT | 181 | Windows 2000: Select Media key |
VK_LAUNCH_APP1 | 182 | Windows 2000: Start Application 1 key |
VK_LAUNCH_APP2 | 183 | Windows 2000: Start Application 2 key |
| 184-185 | Reserved |
VK_OEM_1 | 186 | Windows 2000: For the US standard keyboard, the ';:' key |
VK_OEM_PLUS | 187 | Windows 2000: For any country/region, the '+' key |
VK_OEM_COMMA | 188 | Windows 2000: For any country/region, the ',' key |
VK_OEM_MINUS | 189 | Windows 2000: For any country/region, the '-' key |
VK_OEM_PERIOD | 190 | Windows 2000: For any country/region, the '.' key |
VK_OEM_2 | 191 | Windows 2000: For the US standard keyboard, the '/?' key |
VK_OEM_3 | 192 | Windows 2000: For the US standard keyboard, the '`~' key |
| 193215 | Reserved |
| 216218 | Unassigned |
VK_OEM_4 | 219 | Windows 2000: For the US standard keyboard, the '[{' key |
VK_OEM_5 | 220 | Windows 2000: For the US standard keyboard, the '\|' key |
VK_OEM_6 | 221 | Windows 2000: For the US standard keyboard, the ']}' key |
VK_OEM_7 | 222 | Windows 2000: For the US standard keyboard, the 'single-quote/double-quote' key |
VK_OEM_8 | 223 | |
| 224 | Reserved |
225 | OEM specific | |
VK_OEM_102 | 226 | Windows 2000: Either the angle bracket key or the backslash key on the RT 102-key keyboard |
227228 | OEM specific | |
VK_PROCESSKEY | 229 | Windows 95/98, Windows NT 4.0, Windows 2000: IME PROCESS key |
230 | OEM specific | |
VK_PACKET | 231 | Windows 2000: Used to pass Unicode characters as if they were keystrokes. The VK_PACKET key is the low word of a 32-bit Virtual Key value used for non-keyboard input methods. For more information, see Remark in KEYBDINPUT, SendInput, WM_KEYDOWN, and WM_KEYUP |
| 232 | Unassigned |
233245 | OEM specific | |
VK_ATTN | 246 | Attn key |
VK_CRSEL | 247 | CrSel key |
VK_EXSEL | 248 | ExSel key |
VK_EREOF | 249 | Erase EOF key |
VK_PLAY | 250 | Play key |
VK_ZOOM | 251 | Zoom key |
VK_NONAME | 252 | Reserved for future use |
VK_PA1 | 253 | PA1 key |
VK_OEM_CLEAR | 254 | Clear key |