GLFW Keyboard keys

来源:互联网 发布:大数据技术 原理 编辑:程序博客网 时间:2024/06/18 06:00

Macros

#define GLFW_KEY_UNKNOWN   -1 #define GLFW_KEY_SPACE   32 #define GLFW_KEY_APOSTROPHE   39 /* ' */ #define GLFW_KEY_COMMA   44 /* , */ #define GLFW_KEY_MINUS   45 /* - */ #define GLFW_KEY_PERIOD   46 /* . */ #define GLFW_KEY_SLASH   47 /* / */ #define GLFW_KEY_0   48 #define GLFW_KEY_1   49 #define GLFW_KEY_2   50 #define GLFW_KEY_3   51 #define GLFW_KEY_4   52 #define GLFW_KEY_5   53 #define GLFW_KEY_6   54 #define GLFW_KEY_7   55 #define GLFW_KEY_8   56 #define GLFW_KEY_9   57 #define GLFW_KEY_SEMICOLON   59 /* ; */ #define GLFW_KEY_EQUAL   61 /* = */ #define GLFW_KEY_A   65 #define GLFW_KEY_B   66 #define GLFW_KEY_C   67 #define GLFW_KEY_D   68 #define GLFW_KEY_E   69 #define GLFW_KEY_F   70 #define GLFW_KEY_G   71 #define GLFW_KEY_H   72 #define GLFW_KEY_I   73 #define GLFW_KEY_J   74 #define GLFW_KEY_K   75 #define GLFW_KEY_L   76 #define GLFW_KEY_M   77 #define GLFW_KEY_N   78 #define GLFW_KEY_O   79 #define GLFW_KEY_P   80 #define GLFW_KEY_Q   81 #define GLFW_KEY_R   82 #define GLFW_KEY_S   83 #define GLFW_KEY_T   84 #define GLFW_KEY_U   85 #define GLFW_KEY_V   86 #define GLFW_KEY_W   87 #define GLFW_KEY_X   88 #define GLFW_KEY_Y   89 #define GLFW_KEY_Z   90 #define GLFW_KEY_LEFT_BRACKET   91 /* [ */ #define GLFW_KEY_BACKSLASH   92 /* \ */ #define GLFW_KEY_RIGHT_BRACKET   93 /* ] */ #define GLFW_KEY_GRAVE_ACCENT   96 /* ` */ #define GLFW_KEY_WORLD_1   161 /* non-US #1 */ #define GLFW_KEY_WORLD_2   162 /* non-US #2 */ #define GLFW_KEY_ESCAPE   256 #define GLFW_KEY_ENTER   257 #define GLFW_KEY_TAB   258 #define GLFW_KEY_BACKSPACE   259 #define GLFW_KEY_INSERT   260 #define GLFW_KEY_DELETE   261 #define GLFW_KEY_RIGHT   262 #define GLFW_KEY_LEFT   263 #define GLFW_KEY_DOWN   264 #define GLFW_KEY_UP   265 #define GLFW_KEY_PAGE_UP   266 #define GLFW_KEY_PAGE_DOWN   267 #define GLFW_KEY_HOME   268 #define GLFW_KEY_END   269 #define GLFW_KEY_CAPS_LOCK   280 #define GLFW_KEY_SCROLL_LOCK   281 #define GLFW_KEY_NUM_LOCK   282 #define GLFW_KEY_PRINT_SCREEN   283 #define GLFW_KEY_PAUSE   284 #define GLFW_KEY_F1   290 #define GLFW_KEY_F2   291 #define GLFW_KEY_F3   292 #define GLFW_KEY_F4   293 #define GLFW_KEY_F5   294 #define GLFW_KEY_F6   295 #define GLFW_KEY_F7   296 #define GLFW_KEY_F8   297 #define GLFW_KEY_F9   298 #define GLFW_KEY_F10   299 #define GLFW_KEY_F11   300 #define GLFW_KEY_F12   301 #define GLFW_KEY_F13   302 #define GLFW_KEY_F14   303 #define GLFW_KEY_F15   304 #define GLFW_KEY_F16   305 #define GLFW_KEY_F17   306 #define GLFW_KEY_F18   307 #define GLFW_KEY_F19   308 #define GLFW_KEY_F20   309 #define GLFW_KEY_F21   310 #define GLFW_KEY_F22   311 #define GLFW_KEY_F23   312 #define GLFW_KEY_F24   313 #define GLFW_KEY_F25   314 #define GLFW_KEY_KP_0   320 #define GLFW_KEY_KP_1   321 #define GLFW_KEY_KP_2   322 #define GLFW_KEY_KP_3   323 #define GLFW_KEY_KP_4   324 #define GLFW_KEY_KP_5   325 #define GLFW_KEY_KP_6   326 #define GLFW_KEY_KP_7   327 #define GLFW_KEY_KP_8   328 #define GLFW_KEY_KP_9   329 #define GLFW_KEY_KP_DECIMAL   330 #define GLFW_KEY_KP_DIVIDE   331 #define GLFW_KEY_KP_MULTIPLY   332 #define GLFW_KEY_KP_SUBTRACT   333 #define GLFW_KEY_KP_ADD   334 #define GLFW_KEY_KP_ENTER   335 #define GLFW_KEY_KP_EQUAL   336 #define GLFW_KEY_LEFT_SHIFT   340 #define GLFW_KEY_LEFT_CONTROL   341 #define GLFW_KEY_LEFT_ALT   342 #define GLFW_KEY_LEFT_SUPER   343 #define GLFW_KEY_RIGHT_SHIFT   344 #define GLFW_KEY_RIGHT_CONTROL   345 #define GLFW_KEY_RIGHT_ALT   346 #define GLFW_KEY_RIGHT_SUPER   347 #define GLFW_KEY_MENU   348 #define GLFW_KEY_LAST   GLFW_KEY_MENU 

Detailed Description

These key codes are inspired by the USB HID Usage Tables v1.12 (p. 53-60), but re-arranged to map to 7-bit ASCII for printable keys (function keys are put in the 256+ range).

The naming of the key codes follow these rules:

  • The US keyboard layout is used
  • Names of printable alpha-numeric characters are used (e.g. "A", "R", "3", etc.)
  • For non-alphanumeric characters, Unicode:ish names are used (e.g. "COMMA", "LEFT_SQUARE_BRACKET", etc.). Note that some names do not correspond to the Unicode standard (usually for brevity)
  • Keys that lack a clear US mapping are named "WORLD_x"
  • For non-printable keys, custom names are used (e.g. "F4", "BACKSPACE", etc.)

Macro Definition Documentation

#define GLFW_KEY_0   48
#define GLFW_KEY_1   49
#define GLFW_KEY_2   50
#define GLFW_KEY_3   51
#define GLFW_KEY_4   52
#define GLFW_KEY_5   53
#define GLFW_KEY_6   54
#define GLFW_KEY_7   55
#define GLFW_KEY_8   56
#define GLFW_KEY_9   57
#define GLFW_KEY_A   65
#define GLFW_KEY_APOSTROPHE   39 /* ' */
#define GLFW_KEY_B   66
#define GLFW_KEY_BACKSLASH   92 /* \ */
#define GLFW_KEY_BACKSPACE   259
#define GLFW_KEY_C   67
#define GLFW_KEY_CAPS_LOCK   280
#define GLFW_KEY_COMMA   44 /* , */
#define GLFW_KEY_D   68
#define GLFW_KEY_DELETE   261
#define GLFW_KEY_DOWN   264
#define GLFW_KEY_E   69
#define GLFW_KEY_END   269
#define GLFW_KEY_ENTER   257
#define GLFW_KEY_EQUAL   61 /* = */
#define GLFW_KEY_ESCAPE   256
#define GLFW_KEY_F   70
#define GLFW_KEY_F1   290
#define GLFW_KEY_F10   299
#define GLFW_KEY_F11   300
#define GLFW_KEY_F12   301
#define GLFW_KEY_F13   302
#define GLFW_KEY_F14   303
#define GLFW_KEY_F15   304
#define GLFW_KEY_F16   305
#define GLFW_KEY_F17   306
#define GLFW_KEY_F18   307
#define GLFW_KEY_F19   308
#define GLFW_KEY_F2   291
#define GLFW_KEY_F20   309
#define GLFW_KEY_F21   310
#define GLFW_KEY_F22   311
#define GLFW_KEY_F23   312
#define GLFW_KEY_F24   313
#define GLFW_KEY_F25   314
#define GLFW_KEY_F3   292
#define GLFW_KEY_F4   293
#define GLFW_KEY_F5   294
#define GLFW_KEY_F6   295
#define GLFW_KEY_F7   296
#define GLFW_KEY_F8   297
#define GLFW_KEY_F9   298
#define GLFW_KEY_G   71
#define GLFW_KEY_GRAVE_ACCENT   96 /* ` */
#define GLFW_KEY_H   72
#define GLFW_KEY_HOME   268
#define GLFW_KEY_I   73
#define GLFW_KEY_INSERT   260
#define GLFW_KEY_J   74
#define GLFW_KEY_K   75
#define GLFW_KEY_KP_0   320
#define GLFW_KEY_KP_1   321
#define GLFW_KEY_KP_2   322
#define GLFW_KEY_KP_3   323
#define GLFW_KEY_KP_4   324
#define GLFW_KEY_KP_5   325
#define GLFW_KEY_KP_6   326
#define GLFW_KEY_KP_7   327
#define GLFW_KEY_KP_8   328
#define GLFW_KEY_KP_9   329
#define GLFW_KEY_KP_ADD   334
#define GLFW_KEY_KP_DECIMAL   330
#define GLFW_KEY_KP_DIVIDE   331
#define GLFW_KEY_KP_ENTER   335
#define GLFW_KEY_KP_EQUAL   336
#define GLFW_KEY_KP_MULTIPLY   332
#define GLFW_KEY_KP_SUBTRACT   333
#define GLFW_KEY_L   76
#define GLFW_KEY_LAST   GLFW_KEY_MENU
#define GLFW_KEY_LEFT   263
#define GLFW_KEY_LEFT_ALT   342
#define GLFW_KEY_LEFT_BRACKET   91 /* [ */
#define GLFW_KEY_LEFT_CONTROL   341
#define GLFW_KEY_LEFT_SHIFT   340
#define GLFW_KEY_LEFT_SUPER   343
#define GLFW_KEY_M   77
#define GLFW_KEY_MENU   348
#define GLFW_KEY_MINUS   45 /* - */
#define GLFW_KEY_N   78
#define GLFW_KEY_NUM_LOCK   282
#define GLFW_KEY_O   79
#define GLFW_KEY_P   80
#define GLFW_KEY_PAGE_DOWN   267
#define GLFW_KEY_PAGE_UP   266
#define GLFW_KEY_PAUSE   284
#define GLFW_KEY_PERIOD   46 /* . */
#define GLFW_KEY_PRINT_SCREEN   283
#define GLFW_KEY_Q   81
#define GLFW_KEY_R   82
#define GLFW_KEY_RIGHT   262
#define GLFW_KEY_RIGHT_ALT   346
#define GLFW_KEY_RIGHT_BRACKET   93 /* ] */
#define GLFW_KEY_RIGHT_CONTROL   345
#define GLFW_KEY_RIGHT_SHIFT   344
#define GLFW_KEY_RIGHT_SUPER   347
#define GLFW_KEY_S   83
#define GLFW_KEY_SCROLL_LOCK   281
#define GLFW_KEY_SEMICOLON   59 /* ; */
#define GLFW_KEY_SLASH   47 /* / */
#define GLFW_KEY_SPACE   32
#define GLFW_KEY_T   84
#define GLFW_KEY_TAB   258
#define GLFW_KEY_U   85
#define GLFW_KEY_UNKNOWN   -1
#define GLFW_KEY_UP   265
#define GLFW_KEY_V   86
#define GLFW_KEY_W   87
#define GLFW_KEY_WORLD_1   161 /* non-US #1 */
#define GLFW_KEY_WORLD_2   162 /* non-US #2 */
#define GLFW_KEY_X   88
#define GLFW_KEY_Y   89
#define GLFW_KEY_Z   90
点击打开链接
0 0