当前位置: 首页 > 图文教程 > 认证考试 > java认证 > 关闭Java窗体的技巧

java认证
JAVA里字符编码的探索与理解
Java基本数据类型与流的操作方法
Web应用中Java的速度真相探讨
区分JAVA引用类型和原始类型
Java程序开发过程中异常处理的特殊情况
共享内存在Java中的实现和应用
Java复杂数据类型用法
漫谈Java程序设计中的接口应用
Java数据库编程中的几个常用技巧
Java中对HashMap的深度分析与比较
JavaBean与EJB的不同
Java技术 关于EJB调用原理分析
JAVA基础:Enterprise JavaBeans 入门
JAVA:EJB 的异常处理的最佳做法
JAVA:使用Axis开发Web Service程序
Java 中对文件的读写操作之比较
深入解析Java的新特性assertion
Java基础知识:你是否了解KVM的常量池
Static和Final修饰类属性变量及初始化
什么是基于Java的责任链模式

java认证 中的 关闭Java窗体的技巧


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-04   浏览: 96 ::
收藏到网摘: n/a

  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);
  }
  });