窗体监听事件WindowListener
EXIT_ON_CLOSE:结束窗口所在的应用程序。在窗口被关闭的时候会退出JVM。
DISPOSE_ON_CLOSE:隐藏当前窗口,并释放此窗体占有的资源。如果程序没有其他线程在运行,当所有窗口都被dispose后,JVM也会退出。
举例说明:关闭窗体A,窗体B也会退出。关闭窗体B,窗体A不会退出。
- public class Demo{
- public static void main(String[] args){
- JFrame window1=new JFrame("窗体A");
- JFrame window2=new JFrame("窗体B");
- window1.setBounds(100,100,200,100);
- window2.setBounds(400,100,200,100);
- window1.setVisible(true);
- window2.setVisible(true);
- window1.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
- window2.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
- }
- }
- 【窗体监听事件 WindowListener】
windowOpened 打开
windowActivated 激活(获得焦点状态)
windowDeactivated 非激活(失去焦点状态)
windowIconified 最小化
windowDeiconified 最小化恢复正常
windowClosing 关闭(右上角X),优先于windowClosed
windowClosed 关闭,DISPOSE_ON_CLOSE时才会被调用
- public class Demo extends JFrame {
- public Demo() {
- setBounds(100, 100, 300, 300);
- setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
- setVisible(true);
- addWindowListener(new MyWindowListener());//调用方法类对象
- }
- class MyWindowListener implements WindowListener {
- public void windowOpened(WindowEvent e) {
- System.out.println("窗体打开");
- }
- public void windowClosing(WindowEvent e) {
- System.out.println("窗体关闭exit");
- }
- public void windowClosed(WindowEvent e) {
- System.out.println("窗体关闭dispose");
- }
- public void windowIconified(WindowEvent e) {
- System.out.println("窗体最小化");
- }
- public void windowDeiconified(WindowEvent e) {
- System.out.println("窗体最小化恢复正常");
- }
- public void windowActivated(WindowEvent e) {
- System.out.println("窗体激活");
- }
- public void windowDeactivated(WindowEvent e) {
- System.out.println("窗体非激活");
- }
- }
- public static void main(String[] args) {
- new Demo();
- }
- }
窗体监听事件WindowListener的更多相关文章
- [置顶] java Gui 键盘监听事件
简单写一个java Gui键盘监听事件,实现的效果就是按下键盘控制台输出你按下的键.比如:按下A控制台就输出A 效果如图: 以下把实现的效果分为几个步骤: 1.新建一个窗体类继承窗体: 2.给这个窗体 ...
- Android中Button的五种监听事件
简单聊一下Android中Button的五种监听事件: 1.在布局文件中为button添加onClick属性,Activity实现其方法2.匿名内部类作为事件监听器类3.内部类作为监听器4.Activ ...
- Second Day: 关于Button监听事件的三种方法(匿名类、外部类、继承接口)
第一种:通过匿名类实现对Button事件的监听 首先在XML文件中拖入一个Button按钮,并设好ID,其次在主文件.java中进行控件初始化(Private声明),随后通过SetOnClickLis ...
- js 获取当前焦点所在的元素、给元素和input控件添加键盘监听事件、添加页面级的键盘监听事件
页面级的键盘监听事件 document.onkeydown = function (event) { var e = event || window.event || arguments.callee ...
- android listview 的监听事件
今天遇到了一个比较让我头疼的问题,不过追根揭底只是我对listview理解的不够透彻罢了, 闲言少叙,说说我遇到的问题吧: 上篇随笔我写了关于listview的使用,如果你也已经写好了列表那么恭喜这一 ...
- Android成长日记-Android监听事件的方法
1. Button鼠标点击的监听事件 --setOnClickListener 2. CheckBox, ToggleButton , RadioGroup的改变事件 --setOnCheckedCh ...
- Vue 为什么在 HTML 中监听事件?
为什么在 HTML 中监听事件? 你可能注意到这种事件监听的方式违背了关注点分离(separation of concern)传统理念.不必担心,因为所有的 Vue.js 事件处理方法和表达式都严格绑 ...
- javascript事件有哪些?javascript的监听事件
事件类型: 1.界面事件 onload:描述文档,图片,css已经frame,object加载完毕时触发,window.onload window.onload = function(){ //代表图 ...
- jQuery页面滚动监听事件及高级效果插件
jQuery页面滚动监听事件及高级效果插件 1. One Page scroll (只适用于上下焦点图)http://www.thepetedesign.com/demos/onepage_scrol ...
随机推荐
- Record for Individual Project ( Word frequency program )
1. 预计时间 ● 对问题总体的理解.规划:10 min ● 设计编写程序:5 h ● 调试: 分模块-40 min; 总体-40min ● 测试(性能分析).改进:1 h 2. 实际用时 ● 对 ...
- Linux内核分析第三章读书笔记
第三章 进程管理 3.1 进程 进程就是处于执行期的程序 进程就是正在执行的程序代码的实时结果 线程:在进程中活动的对象.每个线程都拥有一个独立的程序计数器.进程栈和一组进程寄存器. 内核调度的对象是 ...
- 20135327郭皓--Linux内核分析第七周 可执行程序的装载
第七周 可执行程序的装载 郭皓 原创作品转载请注明出处 <Linux内核分析>MOOC课程 http://mooc.study.163.com/course/USTC-1000029000 ...
- cglib 动态代理
JDK的动态代理比较慢,可以使用cglib的代理,速度比较快: package cn.demo02; import java.lang.reflect.Method; import java.util ...
- NumsCount
package com.home.test; import java.util.Arrays; public class NumsCount { public void getNumCount(int ...
- Jquery获取和修改img的src值的方法
转自:http://www.jb51.net/article/46861.htm 获取(代码): $("#imgId")[0].src; 修改(代码): $("#imgI ...
- git查看分支图
git log --graph --decorate --oneline --simplify-by-decoration --all
- GitLab添加ssh-key,操作无需每次输入账号密码
git config --global credential.helper store 然后操作pull/push 会让输入用户名密码,第一次输入进去.下次再操作pull/push时就不需要输入用户名 ...
- CentOS7 卸载mariadb 安装mysql的过程:
1. 检查安装的mariadb rpm -qa |grep mariadb 得到已经安装的安装包 mariadb-libs-5.5.56-2.el7.x86_64mariadb-devel-5.5.5 ...
- python slots
正常情况下,当我们定义了一个class,创建了一个class的实例后,我们可以给该实例绑定任何属性和方法,这就是动态语言的灵活性.先定义class: >>> class Studen ...