背景:
通过Swing开发Java客户端工具过程中,出现Windows的字段的蓝色窗口和界面不搭,颜色不匹配,所以去掉Frame自带的窗口。
例如下图自带的蓝色边框
|
所以采用自定义的方式实现 最小化和 关闭 按钮
项目环境:
Springboot + Swing
问题:如何关闭窗口同时关闭Springboot的主进程?
由于项目采用了Springboot的作为后端服务,关闭窗口使用
frame.dispose();
窗口可以正常关闭,但是Springboot的启动进程依然一直正常运行,问题来了,
public class CloseButtonController extends MouseAdapter {
private JFrame frame = new JFrame();
@Override
public void mouseClicked(MouseEvent e) {
//关闭
frame.setDefaultCloseOperation(PortalFrame.EXIT_ON_CLOSE);
frame.dispose();
}
}
答案:
采用 System.exit(0);来退出主进程,修改后完美解决此
public class CloseButtonController extends MouseAdapter {
private JFrame frame = new JFrame();
@Override
public void mouseClicked(MouseEvent e) {
//关闭
frame.setDefaultCloseOperation(PortalFrame.EXIT_ON_CLOSE);
frame.dispose();
System.exit(0);
}
}