【Java】-NO.16.EBook.4.Java.1.011-【疯狂Java讲义第3版 李刚】- AWT
1.0.0 Summary
Tittle:【Java】-NO.16.EBook.4.Java.1.011-【疯狂Java讲义第3版 李刚】- AWT
Style:EBook
Series:Java
Since:2017-09-30
End:....
Total Hours:...
Degree Of Diffculty:2
Degree Of Mastery:2
Practical Level:2
Desired Goal:2
Archieve Goal:....
Gerneral Evaluation:...
Writer:kingdelee
Related Links:
http://www.cnblogs.com/kingdelee/
1.



2.事件适配器
事件适配器是监听器接口的空实现。用于需要创建监听器时,通过集成的方式来创建,只需要重新自己感兴趣的方法即可。
// 1.事件适配器是监听器接口的空实现。用于需要创建监听器时,通过集成的方式来创建,只需要重新自己感兴趣的方法即可
public class WindowAdapterTest
{
private Frame f = new Frame("测试");
private TextArea ta = new TextArea(6 , 40);
public void init()
{
f.addWindowListener(new MyListener());
f.add(ta);
f.pack();
f.setVisible(true);
}
class MyListener extends WindowAdapter
{
public void windowClosing(WindowEvent e)
{
System.out.println("用户关闭窗口!\n");
System.exit(0);
}
}
public static void main(String[] args)
{
new WindowAdapterTest().init();
}
}



// 1.使用外部类的形式构造适配器,不太推荐这种写法,这里将业务逻辑和显式逻辑耦合不好
public class MailerListener implements ActionListener
{
// 该TextField文本框用于输入发送邮件的地址
private TextField mailAddress;
public MailerListener(){}
public MailerListener(TextField mailAddress)
{
this.mailAddress = mailAddress;
}
public void setMailAddress(TextField mailAddress)
{
this.mailAddress = mailAddress;
}
// 实现发送邮件
public void actionPerformed(ActionEvent e)
{
System.out.println("程序向“"
+ mailAddress.getText() + "”发送邮件...");
// 发送邮件的真实实现
}
} public class SendMailer
{
private Frame f = new Frame("测试");
private TextField tf = new TextField(40);
private Button send = new Button("发送");
public void init()
{
// 使用MailerListener对象作为事件监听器
send.addActionListener(new MailerListener(tf));
f.add(tf);
f.add(send , BorderLayout.SOUTH);
f.pack();
f.setVisible(true);
}
public static void main(String[] args)
{
new SendMailer().init();
}
}


// GUI界面类继承WindowAdapter作为事件监听器类
public class SimpleEventHandler extends WindowAdapter
{
private Frame f = new Frame("测试");
private TextArea ta = new TextArea(6 , 40);
public void init()
{
// 将该类的默认对象作为事件监听器对象
f.addWindowListener(this);
f.add(ta);
f.pack();
f.setVisible(true);
}
// GUI界面类直接包含事件处理器方法
public void windowClosing(WindowEvent e)
{
System.out.println("用户关闭窗口!\n");
System.exit(0);
}
public static void main(String[] args)
{
new SimpleEventHandler().init();
}
}

public class AnonymousEventHandler
{
private Frame f = new Frame("测试");
private TextArea ta = new TextArea(6 , 40);
public void init()
{
// 以匿名内部类的形式来创建事件监听器对象
f.addWindowListener(new WindowAdapter()
{
// 实现事件处理方法
public void windowClosing(WindowEvent e)
{
System.out.println("用户试图关闭窗口!\n");
System.exit(0);
}
});
f.add(ta);
f.pack();
f.setVisible(true);
}
public static void main(String[] args)
{
new AnonymousEventHandler().init();
}
}
【Java】-NO.16.EBook.4.Java.1.011-【疯狂Java讲义第3版 李刚】- AWT的更多相关文章
- 【Java】-NO.16.EBook.4.Java.1.012-【疯狂Java讲义第3版 李刚】- Swing
1.0.0 Summary Tittle:[Java]-NO.16.EBook.4.Java.1.011-[疯狂Java讲义第3版 李刚]- Swing Style:EBook Series:Jav ...
- 【Java】-NO.16.EBook.4.Java.1.012-【疯狂Java讲义第3版 李刚】- JDBC
1.0.0 Summary Tittle:[Java]-NO.16.EBook.4.Java.1.012-[疯狂Java讲义第3版 李刚]- JDBC Style:EBook Series:Java ...
- 【Java】-NO.16.EBook.4.Java.1.005-【疯狂Java讲义第3版 李刚】- 枚举
1.0.0 Summary Tittle:[Java]-NO.16.EBook.4.Java.1.005-[疯狂Java讲义第3版 李刚]- 枚举 Style:EBook Series:Java Si ...
- 【Java】-NO.16.EBook.4.Java.1.006-【疯狂Java讲义第3版 李刚】- 垃圾回收
1.0.0 Summary Tittle:[Java]-NO.16.EBook.4.Java.1.006-[疯狂Java讲义第3版 李刚]- 垃圾回收 Style:EBook Series:Java ...
- 【Java】-NO.16.EBook.4.Java.1.007-【疯狂Java讲义第3版 李刚】- Java基础类
1.0.0 Summary Tittle:[Java]-NO.16.EBook.4.Java.1.007-[疯狂Java讲义第3版 李刚]- Java基础类 Style:EBook Series:J ...
- 【Java】-NO.16.EBook.4.Java.1.008-【疯狂Java讲义第3版 李刚】- 集合/容器
1.0.0 Summary Tittle:[Java]-NO.16.EBook.4.Java.1.008-[疯狂Java讲义第3版 李刚]- 集合 Style:EBook Series:Java Si ...
- 【Java】-NO.16.EBook.4.Java.1.009-【疯狂Java讲义第3版 李刚】- 泛型
1.0.0 Summary Tittle:[Java]-NO.16.EBook.4.Java.1.009-[疯狂Java讲义第3版 李刚]- 泛型 Style:EBook Series:Java Si ...
- 【Java】-NO.16.EBook.4.Java.1.010-【疯狂Java讲义第3版 李刚】- 异常
1.0.0 Summary Tittle:[Java]-NO.16.EBook.4.Java.1.010-[疯狂Java讲义第3版 李刚]- 异常 Style:EBook Series:Java Si ...
- 【Java】-NO.16.EBook.4.Java.1.001-【疯狂Java讲义第3版 李刚】- UML
1.0.0 Summary Tittle:[Java]-NO.16.EBook.4.Java.1.001-[疯狂Java讲义第3版 李刚]- Style:EBook Series:Java Since ...
随机推荐
- NHibernate中Session的处理 线程不安全
NHibernate中Session是线程不安全的,而且每次数据库操作 请求创建Session时对性能有些影响.在Windows应用中可以通过 [ThreadStatic]特性很简单的就可以实现线程安 ...
- Codeforces 191A - Dynasty Puzzles - [DP]
题目链接:https://codeforces.com/problemset/problem/191/A 题意: 给出 $n$ 个小写字母组成的字符串,两个字符串如果前者的最后一个字母与后者的首字母相 ...
- [No000013E]用VSCode写python的正确姿势
最近在学习python,之前一直用notepad++作为编辑器,偶然发现了VScode便被它的颜值吸引.用过之后发现它启动快速,插件丰富,下载安装后几乎不用怎么配置就可以直接使用,而且还支持markd ...
- zookeeper的Java客户端API
zookeeper作为一个分布式服务框架,主要用来解决分布式数据一致性问题,对多种语言提供了API.这里主要记录下JAVA客户端API的使用. 1.创建会话 客户端可以通过创建一个ZooKeeper实 ...
- utf-8 utf8
mysql> DROP TABLE IF EXISTS student; Query OK, 0 rows affected (0.00 sec) mysql> create table ...
- [archlinux] 迁移T7从T460s到T470
这已经不是第一次做OS的迁移了,T7早已经迁移过多台设备了.所以,其实只需要如下三步: 1. rsync 我一直有全系统备份的习惯,T7一直会不定期的全系统rsync到Tstation上面去.所以我 ...
- [filesystem][archlinux][disk encryption][btrfs] btrfs
fork from here http://www.cnblogs.com/hugetong/p/6914248.html boot分区,MBR加密:https://wiki.archlinux.or ...
- day3_文件操作
对文件的操作: 1.打开文件获取文件的句柄,句柄就理解为这个文件 2.通过文件句柄操作文件 3.关闭文件. 一.open函数 1.语法: file object = open(file_name [, ...
- Matlab 快捷键 命令
1. 在命令窗口(Command Window)中: 1) [上.下键]――切换到之前.之后的命令,可以重复按多次来达到你想要的命令 2) clc――清除命令窗口显示的语句,此命令并不清空当前工作区的 ...
- php 的函数
一.函数定义及变量作用域 1. 函数的声明和调用 函数的目的是复用. [$variable=] function [name]([$param]){} 2. 变量的作用域 (1) 全局变量 函数内部想 ...