2011-03-24 66 views
3

我最近开始在Java中使用Slick2d。我需要抓住关闭事件,有没有简单的方法来做到这一点与slick2d?Slick2d - 关闭

回答

0

您可以使用CanvasGameContainer类,它是一个java.awt.Canvas。把它添加到一个Frame并设置一个WindowListener应该可以做到。

+0

如果您通过其中一种实现的方法调用退出例程,则可以调用“gc.exit();”当gc是你的GameContainer参数。 – svarog 2013-07-03 21:13:46

3

我已经在这是基于BasicGame类我当前的项目做到了这一点,通过重写closeRequested()方法,像这样:

public class mySmallTestGame extends BasicGame{ 

.. other code ... 

    @Override 
    public boolean closeRequested() 
    { 
     System.exit(0); // Use this if you want to quit the app. 
     return false; 
    } 

} 
+0

这是旧的问答,但这个答案有效!只是确认它。 – Blue 2015-06-15 22:59:09

0

我不认为我已经理解了问题正确,但假设你正在等待用户输入一两个键盘来结束程序,那么你可以把它放在更新方法中。

Input input = GameContainer.getInput(); 
if (input.isKeyPressed(Input.KEY_LALT) && input.isKeyDown(Input.KEY_F4)){ 

    System.exit(0); 

}