《DONOTHINGONCLOSE,HIDEONCLOSE,EITONCLOSE,DISPOSEONCLOSE区别.docx》由会员分享,可在线阅读,更多相关《DONOTHINGONCLOSE,HIDEONCLOSE,EITONCLOSE,DISPOSEONCLOSE区别.docx(2页珍藏版)》请在三一办公上搜索。
1、DONOTHINGONCLOSE,HIDEONCLOSE,EITONCLOSE,DISPOSEONCLOSE区别JAVA Swing 关闭窗口 n DO_NOTHING_ON_CLOSE:当窗口关闭时,不做任何处理; n HIDE_ON_CLOSE:当窗口关闭时,隐藏这个窗口; n DISPOSE_ON_CLOSE:当窗口关闭时,隐藏并处理这个窗口; n EXIT_ON_CLOSE:当窗口关闭时,退出程序。 n 默认是HIDE_ON_CLOSE。 EXIT_ON_CLOSE:是直接退出jvm. 注意:默认是HIDE_ON_CLOSE 即没有加setDefaultCloseOperation.
2、而 DISPOSE_ON_CLOSE: 主要是 隐藏窗口并dispose这个窗口; 只有当他是最后一个窗口才,才会退出JVM 如例: import javax.swing.*; class exitAndDispose public static void main(String args) JFrame jf1=new JFrame(dispose); JFrame jf2=new JFrame(exit); jf1.setBounds(600, 100, 180, 100); jf2.setBounds(260, 100, 180, 100); jf1.setVisible(true);
3、jf2.setVisible(true); jf1.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); jf2.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 运行结果如上 当你关闭eixt 窗口时 两个窗口 都退出退出; 当你关闭dispose窗口时 只有dispose窗口释放; 不过只有一个dispose窗口时 关闭dispose窗口 不仅窗口隐藏并释放 而且也退出JVM 如例 import javax.swing.*; class Dispose public static void mai
4、n(String args) JFrame jf1=new JFrame(dispose); jf1.setBounds(600, 100, 180, 100); jf1.setVisible(true); jf1.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); 当关闭窗口时 他会退出jvm 如图 Jvm 退出 能够继续执行 HIDE_ON_CLOSE 隐藏窗口并不释放,即使他是最后一个程序 也不释放退出JVM 即程序还在内存中运行 如例 import javax.swing.*; class hideTest public static void main(String args) JFrame jf1=new JFrame(hide); jf1.setBounds(600, 100, 180, 100); jf1.setVisible(true); jf1.setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE); 当关闭窗口时 不能再继续执行其他任务 证明程序还在执行 还未退出JVM DO_NOTHING_CLOSE 当关闭窗口时 不做任何动作 即那那叉叉失效了一样