好的,所以最近我使用swing创建了一个像java中的剪切工具这样的程序,允许你选择屏幕区域并将其保存为计算机图像。
现在,我要做的是制作一个全新的项目,使用我制作的其他程序。
然而,当我的新应用程序启动第三方jar时,它工作正常,但当我关闭第三方应用程序时,它也会关闭我的新应用程序。我在第三部分应用程序中使用系统退出,我知道它是关闭所有内容的原因。
现在我的问题是:因为这个原因使用系统退出是不对的?我可以做些什么来阻止关闭我的新应用而不修改旧的应用程序?
或者,您可以在将来提出建议而不是使用system.exit,因为我仍然希望原始的能够正常关闭,我只是不想要我的新的使用旧jar关闭同样。
我尝试在新应用中禁用系统退出,这会产生更多问题。
答案 0 :(得分:1)
不要使用System.exit();
我可以做些什么来防止关闭我的新应用而不修改旧应用程序?
使用:
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
如果框架是唯一打开的窗口,它将退出JVM。如果其他Windows处于打开状态,则仅关闭当前窗口。单击窗口的“关闭”按钮时将使用默认关闭操作。
更好的是,不要将JFrame用作工具的窗口。相反,你应该使用JDialog。