java swing 窗口界面关闭事件响应

在swing的窗口里面,即jframe里面,进行关闭窗口动作,如果事先不在代码中设置好,则默认是把窗口设成setVisable(false),程序还是依然运行着,继续占用内存,所以如果不小心,越调试则会发现内存占用率越高,机子越来越卡。

一般的,如果没有特殊要求,只需要这样让该窗口对象调用setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);则当我们关闭窗口时,程序结束运行  。

但是,如果有特殊要求,如关闭之前要调用一些方法,则可以这样:让该窗口对象调用addWindowListener(new WindowAdapter());方法,并重载方法内容,就像下面的代码那样。

[java] view plaincopyprint?

    1. addWindowListener(new WindowAdapter() {
    2. public void windowClosing(WindowEvent e) {
    3. super.windowClosing(e);
    4. //加入动作
    5. //
    6. }
    7. });
时间: 2024-11-05 02:21:34

java swing 窗口界面关闭事件响应的相关文章

Java Swing 图形界面实现验证码(验证码可动态刷新)

import java.awt.Color;import java.awt.Font;import java.awt.Graphics;import java.awt.Toolkit;import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;import java.util.Random;import javax.swing.JFrame; public class CheckCode extends JFrame {

Java Swing界面编程(22)---事件处理:动作事件及监听处理

要想让一个按钮变得有意义,就必须使用事件处理.在swing的事件处理中,可以使用ActionListener接口处理按钮的动作事件. package com.beyole.util; import java.awt.Font; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.WindowAdapter

界面关闭的事件响应

最近使用了窗口关闭事件:void QWidget::closeEvent ( QCloseEvent * event ) [virtual protected] 当用鼠标点击关闭按钮或者在任务栏上右击关闭,都会触发这一事件,实现效果如下: 附上实现代码: 这是主界面的关闭事件(CallTrace为主界面) 1 void CallTrace::closeEvent(QCloseEvent *e) 2 { 3 closeDialog = new CloseDialog; 4 closeDialog-

Java Swing界面编程(24)---事件处理:键盘事件及监听处理

在Swing的事件处理中也可以对键盘的操作进行监听,直接使用KeyListener接口即可. package com.beyole.util; import java.awt.event.KeyEvent; import java.awt.event.KeyListener; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import javax.swing.JFrame; import javax

Java Swing界面编程(25)---事件处理:鼠标事件及监听处理

如果想对一个鼠标的操作进行监听,如果鼠标按下.松开等,则可以使用MouseListener接口. package com.beyole.util; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import javax.swing.JFrame; import

Java Swing界面编程(21)---事件处理:窗体事件

Splay树的插入操作,只需要处理好插入节点的孩子节点就可以了,最重要的是不要破坏了BST的基本规则. 因为高度并不是Splay树的首要因素,所以插入的时候也是使用splay操作,然后在根节点插入. 参考:http://www.geeksforgeeks.org/splay-tree-set-2-insert-delete/ 对比一下使用插入创建的树和手工创建数的区别,先序遍历的结果: #pragma once #include<stdio.h> #include <stdlib.h&g

Java Swing界面编程(29)---JCheckBox事件处理

JCheckBox和JRadioButton的事件处理监听接口是一样的,都是使用ItemListener接口. package com.beyole.util; import java.awt.Container; import java.awt.GridLayout; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; import java.awt.event.WindowAdapter; import j

Java Swing界面编程(26)---单选按钮:JRadioButton

单选按钮就是在给出的多个显示信息中指定选择一个,在swing中可以使用JRadioButton完成一组单选按钮的操作. package com.beyole.util; import java.awt.Container; import java.awt.GridLayout; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import javax.swing.BorderFactory; impo

JAVA与图形界面开发(Applet应用程序、AWT库、Swing)

Applet 1)简单说,Applet就是嵌入到网页中的小程序,Java代码. 2)编写Applet程序,要继承JApplet类,并根据自己需要覆写相关方法(init.start.stop.destroy<可选>)即可. 3)Applet生命周期: 初始化阶段:init方法(自动被调用,完成图形组件的初始化和版面分配) 执行阶段:start方法(当Applet当前窗口被激活时,执行相应代码) 终止阶段:stop方法(关闭Applet程序时) 释放资源:destroy方法 4)向Applet里添