【发布时间】:2019-08-04 15:24:37
【问题描述】:
我的按键代码适用于所有键盘字母,但不适用于 Enter 或 Tab 等键。
glfwSetCharCallback(window, character_callback);
void character_callback(GLFWwindow* window, unsigned int codepoint)
{
char c = codepoint;
printf("%c", c);
}
当我按下 Tab 或 Enter 时,该功能甚至没有运行,但它确实适用于 Space 栏,我该怎么做关于接收所有按键?
【问题讨论】:
-
空格键产生一个可打印的 ASCII 字符——它不是一个“特殊”键,所以它可以正常工作也就不足为奇了。
-
知道如何获取 Enter 键代码吗?改用 windows 输入会是不好的做法吗?
-
@PaulMcKenzie 实际上,Enter 和 Tab 也产生 ASCII 字符(回车和水平制表符,分别),与空格键产生的一样可打印。但 GLFW 不想将它们视为文本键。