Java应用程序窗口关闭的六种方法

转载 2012年03月27日 20:33:24

本文介绍Java应用程序窗口关闭的六种方法。

  1.使用JFrame的enableEvents和processWindowEvent


//Frame1.java 
  import java.awt.*; 
  import java.awt.event.*; 
  import javax.swing.*; 
  public class Frame1 extends JFrame { 
  public Frame1() { 
  enableEvents(AWTEvent.WINDOW_EVENT_MASK); 
  this.setSize(new Dimension(400, 300)); 
  this.setTitle("Frame1"); 
  } 
  protected void processWindowEvent(WindowEvent e) { 
  super.processWindowEvent(e); 
  if (e.getID() == WindowEvent.WINDOW_CLOSING) { 
  System.exit(0); 
  } 
  } 

  }

  2.直接实现WindowListener接口

  //Frame1.java


   import java.awt.*; 
  import java.awt.event.*; 
  public class Frame1 extends Frame implements WindowListener { 
  public Frame1() { 
  this.setSize(new Dimension(400, 300)); 
  this.setTitle("Frame1"); 
  this.addWindowListener(this); 
  } 
  public void windowClosing(WindowEvent windowEvent) { 
  System.exit(0); 
  } 
  public void windowOpened(WindowEvent windowEvent) { } 
  public void windowClosed(WindowEvent windowEvent) { } 
  public void windowIconified(WindowEvent windowEvent) { } 
  public void windowDeiconified(WindowEvent windowEvent) { } 
  public void windowActivated(WindowEvent windowEvent) { } 
  public void windowDeactivated(WindowEvent windowEvent) { } 
  }

  3.直接继承窗体适配器WindowAdapter


 //Frame1.java 
  import java.awt.*; 
  import java.awt.event.*; 
  public class Frame1 extends WindowAdapter { 
  public Frame1() { 
  Frame f=new Frame(); 
  f.setSize(new Dimension(400, 300)); 
  f.setTitle("Frame1"); 
  f.addWindowListener(this); 
  f.setVisible(true); 
  } 
  public static void main(String[] s){ 
  new Frame1(); 
  } 
  public void windowClosing(WindowEvent windowEvent) { 
  System.exit(0); 
  } 
  }

  4.间接继承窗体适配器WindowAdapter


 //Frame1.java 
  import java.awt.*; 
  import java.awt.event.*; 
  public class Frame1 extends Frame { 
  public Frame1() { 
  this.setSize(new Dimension(400, 300)); 
  this.setTitle("Frame1"); 
  this.addWindowListener(new winAdapter()); 
  this.setVisible(true); 
  } 
  public static void main(String[] s){ 
  new Frame1(); 
  } 
  } 
  class winAdapter extends WindowAdapter{ 
  public void windowClosing(WindowEvent windowEvent) { 
  System.exit(0); 
  } 

  }

  5.间接实现WindowListener接口


 //Frame1.java 
  import java.awt.*; 
  import java.awt.event.*; 
  public class Frame1 extends Frame { 
  public Frame1() { 
  this.setSize(new Dimension(400, 300)); 
  this.setTitle("Frame1"); 
  this.addWindowListener(new winEventHandle()); 
  this.setVisible(true); 
  } 
  public static void main(String[] s){ 
  new Frame1(); 
  } 
  } 
  class winEventHandle implements WindowListener { 
  public void windowClosing(WindowEvent windowEvent) { 
  System.exit(0); 
  } 
  public void windowOpened(WindowEvent windowEvent) { } 
  public void windowClosed(WindowEvent windowEvent) { } 
  public void windowIconified(WindowEvent windowEvent) { } 
  public void windowDeiconified(WindowEvent windowEvent) { } 
  public void windowActivated(WindowEvent windowEvent) { } 
  public void windowDeactivated(WindowEvent windowEvent) { } 
  }

  6.使用Inner Class


    //Frame1.java 
  import java.awt.*; 
  import java.awt.event.*; 
  public class Frame1{ 
  public Frame1(){ 
  Frame f=new Frame(); 
  f.addWindowListener(new WindowAdapter(){ 
  public void windowClosing(WindowEvent e){ 
  System.exit(0); 
  } 
  }); 
  f.setSize(new Dimension(400, 300)); 
  f.setVisible(true); 
  } 
  public static void main(String[] s){ 
  new Frame1(); 
  } 
  }

  Jframe的关闭方法:


   setDefaultCloseOperation(EXIT_ON_CLOSE); 
  frame的关闭方法如下: 
  this.addWindowListener(new java.awt.event.WindowAdapter() { 
  public void windowClosing(java.awt.event.WindowEvent e) { 
  System.exit(0); 
  } 
  });

Java应用程序窗口关闭的六种方法

1.使用JFrame的enableEvents和processWindowEvent /Frame1.java   import java.awt.*;   import java.awt...
  • dxgsmq
  • dxgsmq
  • 2012年04月15日 10:58
  • 565

Java应用程序窗口关闭的六种方法...【Pnoter】

java应用程序窗口关闭的六种方法
  • Pnoter
  • Pnoter
  • 2015年02月15日 15:51
  • 683

[笔记]java应用程序窗口关闭的六种方式

在这里做个笔记1.使用JFrame的enableEvents和processWindowEvent/ /Frame1.java   import java.awt.*;   import j...

C++ win32应用程序打开新窗口的方法

////maindlg.h #ifndef _MAIN_H #define _MAIN_H #include BOOL WINAPI Main_Proc(HWND hWnd, UIN...

vs平台运行窗体应用程序时避免dos窗口弹出的方法

背景   最近小编在运行winform窗体应用程序时,会弹出之前运行非winform程序的dos窗口。对比源代码,发现这一问题可以解决,具体的过程请往下看: 问题 小编在运行窗体程序时,...

Java GUI:基于JFrame、带有事件处理的窗口型应用程序

本文使用包javax.swing中的JFrame来创建自己的窗口类型,该窗口将放在GUI部件中,用户可以使用GUI部件交互地驱动程序。这个程序还引用了类StringTokenizer(包java.ut...

java应用程序登录窗口

  • 2009年11月23日 10:39
  • 1.88MB
  • 下载

QT中关闭应用程序和窗口的函数

使用QT编辑界面,其中带来很大方便的一点就是Qt中自带丰富的、种类齐全的类及其功能函数,程序员可以在编辑程序的过程中简单地直接调用。关于窗口关闭的操作,在这里指出常用的三个槽,即quit(),exit...
  • wyhang0
  • wyhang0
  • 2014年08月22日 09:29
  • 248

在C++/MFC框架应用程序里,当浮动工具条被拖离主窗口后,一般都有一个“关闭”按钮,

在C++/MFC框架应用程序里,当浮动工具条被拖离主窗口后,一般都有一个“关闭”按钮,如图一所示: 图一  本来这个按钮完全是按照Windows应用程序的UI设计规范而设计的,也就...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Java应用程序窗口关闭的六种方法
举报原因:
原因补充:

(最多只允许输入30个字)