转载自: http://blog.csdn.net/wjq3714/archive/2009/06/20/4284280.aspx
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();
}
}
分享到:
相关推荐
Java 应用程序窗口关闭的六种方法 Java 应用程序窗口关闭是指在 Java 应用程序中关閉窗口的操作。以下是六种常见的 Java 应用程序窗口关闭方法: 1. 使用 JFrame 的 enableEvents 和 processWindowEvent 在 Java ...
本文将详细解析“Java窗体关闭代码”这一主题所涉及的知识点,并提供深入的理解。 ### 知识点一:Swing概述 Swing是Java中的一个用于创建图形用户界面的轻量级组件工具包。它作为AWT(Abstract Window Toolkit)的...
### Java窗口的打开与关闭——基于Swing框架的实现 #### 概述 在Java图形用户界面编程中,Swing框架提供了丰富的组件和事件处理机制,使得开发人员能够轻松地创建复杂的用户界面。本文将围绕如何利用Swing框架中的...
java方法之五,csdn现在的虚拟c币可以兑换下载分,兑换比例为1:2。不过对大多数没有下载积分的人来讲,一般也c币,所以这个也不太实用。方法之五,csdn现在的虚拟c币可以兑换下载分,兑换比例为1:2。不过对大多数...
JNA提供了一种相对简单的方法来映射Java方法到本地函数调用,使得Java开发者能够轻松地访问操作系统的服务。 在"Java实现获取窗口句柄并操作窗口 JNA"的场景中,窗口句柄是操作系统用来标识和管理窗口的一个标识符...
在Java编程环境中,获取窗口句柄(Window Handle)通常是与操作系统进行交互的一种方式,主要用于控制或检测特定的图形用户界面(GUI)元素。在Java中,这种操作涉及到AWT(Abstract Window Toolkit)和Swing库,这...
java程序中关闭bat用到的。 退出bat。
当用户尝试关闭窗口时,会触发`windowClosing`方法,从而执行相应的操作,如隐藏窗口或退出程序。 #### 总结 通过以上分析,我们可以看出使用Java Swing创建窗口是一个相对简单的过程。关键在于理解Swing的基本...
// 关闭窗体时退出程序 frame.setVisible(true); // 显示窗体 } } ``` 2. **布局管理器**:Java Swing使用布局管理器自动调整组件的位置和大小。默认的布局管理器是BorderLayout,但你可以根据需要切换到其他的,...
在Java编程语言中,"java窗体内的弹性小球"是一个常见的初级到中级的实践项目,它涉及到图形用户界面(GUI)的创建、事件处理以及简单的物理模拟。这个项目的目标是设计一个应用程序,其中一个小球在窗口内自由移动...
在Java编程语言中,事件处理是用户界面(UI)开发中的关键部分,它允许程序响应用户的操作,如点击按钮、选择菜单项或关闭窗口。Java提供了丰富的API来处理这些事件,其中窗口事件(Window Events)是针对窗口生命...
通过`addWindowListener`方法,一个`WindowAdapter`监听器被添加到窗口上,用于处理窗口关闭事件。当用户尝试关闭窗口时,`windowClosing`方法会被触发,从而执行`System.exit(0)`,确保程序能够干净地退出。 ### ...
在Java中,我们可以使用`Runtime.getRuntime().exec()`方法来执行系统命令,例如在Windows上使用`taskkill`命令来终止一个进程。例如,如果JBOSS服务器的进程ID为1234,我们可以通过以下代码终止它: ```java ...
本资源“java窗体设计+GUI经典代码全放送”正是针对这一主题,提供了丰富的示例代码和实践指导,帮助开发者掌握Java中的窗口编程。 Java窗体设计主要基于Java的Swing和JavaFX库。Swing是Java的标准GUI工具包,它...
紧接着,使用primaryStage.setOnCloseRequest()方法设置了一个事件处理器,当窗口关闭请求发生时,该处理器会被调用,并在控制台输出“监听到窗口关闭”。最后,通过调用launch(args)方法启动应用程序。 通过此例,...
本文将深入探讨Swing和AWT中的核心类与控件,通过实例说明如何创建、配置及管理窗体元素,帮助读者更好地理解和运用这些基本但不可或缺的方法。 #### Swing类详解 Swing提供了比AWT更丰富的组件集合,更加灵活且...
1. `setDefaultCloseOperation(int operation)`:设置窗口关闭时的操作,通常设置为`JFrame.EXIT_ON_CLOSE`,这会在窗口关闭时终止整个应用。 2. `setSize(int width, int height)`:设置窗口的宽度和高度。 3. `...
- 可以通过setDefaultCloseOperation方法设置关闭操作,如JFrame.EXIT_ON_CLOSE。 - 使用setLayout管理器布局组件,如FlowLayout、GridLayout、BorderLayout或GridBagLayout等。 - 添加组件到JFrame,例如:add...
当计数器达到预设的n次时,调用JFrame的dispose()方法关闭窗口。 Swing还提供了setAlwaysOnTop(true)方法,用于设置窗口始终显示在其他窗口之上。这确保了无论用户如何切换应用,漂浮窗口都保持可见。 此外,文档...