今天我们要实现这个关闭窗口的功能,就是点窗口的那个叉叉它会关闭。

设计窗口的事件就是WindowsEvents,而与之有关的监听器就是WindowsListener

WindowsListener也是个接口,它有7个方法,分别处理windows的不同的事件。  比如windowActivated()window被激活,就是两个窗口,一个是颜色变灰,一个仍是蓝色,然后你用鼠标点那个灰的窗口它变成蓝色这叫激活窗口。  windowClosed()  已经关后做出的反应  windowClosing()正在关闭,这是我们要处理的事件。  windowIconified()卡片化,也是最小化的意思。

看例子代码(内部类的写法):

import java.awt.*;
import java.awt.event.*; public class TestWindowClose {
public static void main(String[] args) {
new MyFrame55("fuck");
}
} class MyFrame55 extends Frame { public MyFrame55(String s) {
super(s);
setBounds(300,300,400,400);
setLayout(null);
setBackground(new Color(204,204,255));
setVisible(true);
addWindowListener(new MyWindowMonitor());
} class MyWindowMonitor extends WindowAdapter { //内部类,因为这个是window关闭的这个事件监听类对于其他类一点关系都没有
public void windowClosing(WindowEvent e) { //重写正在关闭这个事件
setVisible(false);
System.exit(0);//存0是正常退出,存-1是非正常退出。
}
} }

哎其实这个类和其他的方法有关系吗?除了和这个addWindowListener()所以,除了这个写法,我们还有这样的一种写法,这种写法叫做方法内的类:局部类,也叫匿名的内部类

    this.addWindowListener(
new WindowAdapter() {//像一个类的类体,但它没有名字
public void windowClosing(WindowEvent e) {
setVisible(false);
System.exit(-1);
}
});

这个类是当成WindowAdapter来用。所以语法这样写本质上的意义就是这个类从WindowAdapter继承,我们new了这个类的一个对象出来把它当作WindowAdapter来用。

匿名类一般是 逻辑简单,语句少,不经常变动,使用匿名类

就知道有这个东西,看得懂别人写的就行了。

windowsEvents的更多相关文章

随机推荐

  1. ldd

    ldd命令用于判断某个可执行的 binary 档案含有什么动态函式库 [diego@localhost ~/work/branch_dispatch_201511/rtqa_center/source ...

  2. sql跟踪及tkprof使用

    简述 在oracle数据库中,awr是关于数据库系统总体的负载情况和运行情况的报告.而当系统负载都显示正常,而client运行某些动作响应非常慢,或者某些终端连接的会话运行缓慢或异常时,就须要用到会话 ...

  3. js获取get传递的值

    <script language="javascript" src="js/jquery-1.9.0.min.js"></script> ...

  4. YII获取当前URL

    <?php //当前域名   echoYii::app()->request->hostInfo;   //除域名外的URL   echoYii::app()->request ...

  5. Linux IO 多路复用是什么意思?

    写在前面:本文整理于知乎,原文链接为http://www.zhihu.com/question/32163005/answer/55772739,作者:罗志宇 再次向作者表示感谢~~ 假设你是一个机场 ...

  6. 记一次UICollectionView中visibleCells的坑

    记一次UICollectionView中visibleCells的坑 项目的要求是这样的 其实也是一个轮播图,而已,所以依照轮播图的实现原理,这里觉得也很简单,还是利用UICollectionView ...

  7. 訪问的网页自己主动打开QQ对话

    今天訪问中国论文网,自己主动就弹出与QQ的对话框,非常是好奇.于是查看网页源码发现例如以下可疑处: <script type="text/javascript"> fu ...

  8. Buildroot构建指南--快速上手与实用技巧【转】

    本文转载自:http://blog.csdn.net/zhou_chenz/article/details/52335634 Buildroot官方全英文使用手册的链接是https://buildro ...

  9. oracle中的sys用户(修改密码)/////Oracle删除表空间的同时删除数据文件 ///// Oracle中如何保证用户只有一个session登录

    oracle中的sys用户(修改密码) (2011-07-01 09:18:11) 转载▼ 标签: it 分类: oracle 概念: SYS用户是Oracle中权限最高的用户,而SYSTEM是一个用 ...

  10. JAVASCRIPT 和 AJax 实现局部验证

    JSP页面 <td width="10%" class="main_matter_td">真实姓名</td> <td width= ...