关闭窗口的LWJGL + Swing

时间:2014-12-06 18:19:27

标签: java swing netbeans lwjgl

我在JFrame内使用awt画布来渲染我的LWJGL应用程序。当我在Netbeans中运行我的应用程序时,我可以使用我的

关闭窗口
destroyOpenGL();

方法而不必使用

JFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

这是我的destroyOpenGL()方法的代码:

private void destroyOpenGL() {
    obj.destroy();
    obj2.destroy();
    Display.destroy();
    frame.dispose();
    System.exit(0);
}

obj.destroy();obj2.destroy();用于销毁正在渲染的两个VBO。

当我清理并将应用程序构建到.jar文件中并运行它时,一切正常,但是当我尝试关闭应用程序时,即使显示正确关闭,我也会收到java已停止工作的消息窗户。

当我添加JFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);时,我在Netbeans中得到了这个:

Exception in thread "main" java.lang.IllegalStateException: Shutdown in progress

当我打扫并打造时,然后运行jar,它就会很好。

我不明白为什么会发生这种情况,而且我不确定是否有解决方案。

0 个答案:

没有答案