Java LWJGL和FLICK捕捉击键时遇到困难

Java LWJGL和FLICK捕捉击键时遇到困难,java,lwjgl,slick2d,Java,Lwjgl,Slick2d,我的LWJGL和slick有问题。我试图做的是显示一定数量的文本,当按下一个按钮时(在本例中为return),屏幕将清除并显示新文本。我目前正在使用此代码 public void text() { GL11.glClear(GL11.GL_COLOR_BUFFER_BIT); Color.white.bind; font.drawString(0, 0, "text"); while (Keyboard.isKeyDown(Keyboard.KEY_RETURN))

我的LWJGL和slick有问题。我试图做的是显示一定数量的文本,当按下一个按钮时(在本例中为return),屏幕将清除并显示新文本。我目前正在使用此代码

public void text() {
    GL11.glClear(GL11.GL_COLOR_BUFFER_BIT);
    Color.white.bind;
    font.drawString(0, 0, "text");
  while (Keyboard.isKeyDown(Keyboard.KEY_RETURN)) {
    GL11.glClear(GL11.GL_COLOR_BUFFER_BIT);
    font.drawString(0, 0, "text (again)");
  }
}
//so on an so forth
但问题是,当我放入另一个,它会产生一个死亡循环。
有更好的方法吗?我尝试过If语句,但它刚刚出现,然后又恢复到第一个字符串。

在我看来,发生的事情是它重复执行,而您尝试执行它一次。这方面的准则是:

while(Keyboard.next()) {
        if(Keyboard.getEventKeyState()) {
            switch(Keyboard.getEventKey()) {
            case Keyboard.KEY_RETURN:
                GL11.glClear(GL_COLOR_BUFFER_BIT);
                font.drawString(0, 0, "text (again)");
                break;
            }
        }
    }