LWJGL似乎對我很敏感(或者我又是一個笨蛋)。我使用下面的代碼:LWJGL關鍵事件狀態不起作用
if(Keyboard.getEventKey() == Keyboard.KEY_Q) {
if (Keyboard.getEventKeyState()) {
System.err.println("Pressed");
}else {
System.err.println("Released");
}
}
當我按下並釋放「Q」,它打印出既不是「壓制」,也不是「釋放」。幫幫我?
編輯:問題解決了。您首先必須在使用getEventKey()之前輪詢鍵盤緩衝區。固定的代碼是:
while(Keyboard.next()) {
if(Keyboard.getEventKey() == Keyboard.KEY_Q) {
System.out.println("HI");
if (Keyboard.getEventKeyState()) {
System.out.println("Pressed");
}else {
System.out.println("Released");
}
}
}
你不應該使用'System.out.println()'? – Doorknob
這並不重要。它只是打印文本紅色,所以我可以在所有其他打印輸出中看到它。即使我改變它,它也沒有區別 – CoderTheTyler