我的LWJGL键盘模块有一个问题。我需要探测按下的按键,我知道怎么做。但是,当我按下键时,LWJGL会返回2-3个事件。例如,如果我按'A',LWJGL调用3个事件,然后得到'AAA'。我该怎么解决呢?这是我的代码:
Keyboard.enableRepeatEvents(true);
if(Keyboard.getEventKeyState()){
if(Keyboard.getEventKey() == Keyboard.KEY_BACK){
set.setValText(""); // Clean text
}else{
set.setValText(set.getFieldText() + Keyboard.getEventCharacter()); // Add event symbol to my string
}
}
Keyboard.next();发布于 2021-01-06 10:53:31
我想发表评论,但没有足够的声誉去做,所以我发帖作为回应。
基本上,当按下一个键时,会触发多个事件,例如:按下键、向上键、按下键、释放键、.
根据LWJGM的文件 (我对它不熟悉,只是在googled上搜索了一段时间),按一个键时至少有两个事件:
#define GLFW_RELEASE 0键或鼠标按钮被释放。
#define GLFW_PRESS 1按下了键或鼠标按钮。
#define GLFW_REPEAT 2钥匙被按住,直到它再次出现。
https://stackoverflow.com/questions/65593912
复制相似问题