关键常数列表

时间:2012-02-13 18:43:23

标签: c++ char freeglut

我想查看关键事件,例如按下/按下...

但是我创建的要调用的函数获得了一个“unsigned char”。我可以使用key == 'w'检查W / A / S / D等密钥,但我不知道如何检查其他密钥。

是否有可用字符列表,例如“\ n”?

5 个答案:

答案 0 :(得分:4)

您可以找到字符转义序列列表here

请注意,某些密钥必须使用glutSpecialFunc() / glutSpecialUpFunc()来处理,其处理程序适用以下内容:

  

key参数可以采用以下定义的常量值之一:

     
      
  • GLUT_KEY_F1,GLUT_KEY_F2,...,GLUT_KEY_F12 - F1至F12键
  •   
  • GLUT_KEY_PAGE_UP,GLUT_KEY_PAGE_DOWN - Page Up和Page Down键
  •   
  • GLUT_KEY_HOME,GLUT_KEY_END - 主页和结束键
  •   
  • GLUT_KEY_LEFT,GLUT_KEY_RIGHT,GLUT_KEY_UP,GLUT_KEY_DOWN - 箭头键
  •   
  • GLUT_KEY_INSERT - 插入密钥
  •   

答案 1 :(得分:0)

C ++中的自然字符类型使用ASCII字符。这是一个列表:http://www.asciitable.com/

您可以检查类似换行符的内容:

if (key == '\n')

答案 2 :(得分:0)

答案 3 :(得分:0)

您要求转义序列。

Here是C ++非图形字符及其转义序列的完整列表。

答案 4 :(得分:0)

如果我理解正确,就没有系统独立的获取方式 您需要的信息。我认为,你所寻找的是一种叫做a 扫描代码,大多数系统都有办法让它“低于 Unix,如果你在运行的话,那将是X库中的东西 窗口,在Windows下,它可能在Windowing库中 好。你会得到的是扫描码加上一些表示的 shift,control和alt等各种键的状态;和窗口 每当任何键改变状态时,系统都会生成一个事件。

如果您没有在窗口(或在您自己的窗口中)运行,它可能仍然存在 如果你直接读书,可以获得某种关键状态 从一个终端,虽然我不太熟悉可能性。 (请记住,从历史上看,输入接口是专为 通过串行线读取,而这种信息根本就没有 可以在C ++中找到。)

相关问题