java 图形化小工具Abstract Window Toolit 事件处理
- EventSource(事件源):事件发生的场所,通常就是各个组件,例如按钮、窗口,菜单等。
- Event (事件封装了GUI组件上发生的特定事情(通常就是一次用户操作)。如果程序需要获得GUI组件上所发生事件的相关信息,都通过Event象来取得。
- EventListener(事件监昕器):负责监听事件源所发生的事件,并对各种事件做出响应处理
3,事件的分类:
1,低级事件:
- ComponentEvent: 组件事件,当组件尺寸发生变化、位置发生移动、显示 隐藏状态发生改变的时候触发该事件。
- ContainerEvent: 容器事件,当容器里发生添加组件、删除组件时触发该事件。
- WindowEvent: 窗口事件,当窗口状态发生改变(如打开、关闭、最大化、最小化)时触发该事件
- FocusEvent: 焦点事件,当组件得到焦点或失去焦点时触发该事件
- KeyEvent: 键盘事件,当按键被按下、松开、单击时触发该事
- MouseEvent: 鼠标事件,当进行单击、按下、松开、移动鼠标等动作时触发该事件
- PaintEvent: 组件绘制事件,该事件是个特殊的事件类型,GUI组件调update/paint方法来呈现自身时触发该事件,该事件并非专用于事件处理模型
2,高级事件:
- ActionEvent:动作事件,当按钮、菜单项被单击,在TextField中按 Enter 键时触发该事件。
- AdjustmentEvent: 调节事件,在滑动条上移动滑块以调节数值时触发该事件。
- ItemEvent: 选项事件,当用户选中某项或取消选中某项时触发该事件
- TextEvent: 文本事件,当文本框、文本域里的文本发生改变时触发该事件。
3,AWT事件继承关系图(粗线圈出来的是常用的):
4,事件类型和监听器表:
5、窗口事件:
import java.awt.*;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener; /**
* @ClassName WindowCloseTest
* @projectName: object1
* @author: Zhangmingda
* @description: XXX
* date: 2021/5/6.
*/
public class WindowCloseTest {
public static void main(String[] args) {
Frame frame = new Frame("窗口监听器测试");
frame.setBounds(400,300,300,300);
WindowListener windowListener = new WindowListener() {
@Override
public void windowOpened(WindowEvent windowEvent) {
System.out.println("窗口被打开");
} @Override
public void windowClosing(WindowEvent windowEvent) {
System.out.println("窗口关闭中");
System.exit(0);
} @Override
public void windowClosed(WindowEvent windowEvent) {
System.out.println("窗口已关闭");
} @Override
public void windowIconified(WindowEvent windowEvent) {
System.out.println("窗口最小化了");
} @Override
public void windowDeiconified(WindowEvent windowEvent) {
System.out.println("窗口已恢复");
} @Override
public void windowActivated(WindowEvent windowEvent) {
System.out.println("窗口获得焦点");
} @Override
public void windowDeactivated(WindowEvent windowEvent) {
System.out.println("窗口失去焦点");
}
};
frame.addWindowListener(windowListener);
frame.setVisible(true);
}
}
6、事件适配器:
import java.awt.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener; public class WindowCloseTest {
public static void main(String[] args) {
Frame frame = new Frame("测试关闭窗口");
WindowListener windowListener = new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
System.out.println("正在关闭窗口");
System.exit(0);
}
};
frame.addWindowListener(windowListener);
frame.setBounds(100, 100, 400, 400);
frame.setVisible(true);
}
}
java 图形化小工具Abstract Window Toolit 事件处理的更多相关文章
- java 图形化小工具Abstract Window Toolit
老掉牙的历史 Java1.0在发布的时候,就为我们提供了GUI操作的库,这个库系统在所有的平台下都可以运行,这套基本的类库被称作抽象窗口工具集(Abstract Window Toolit),简称 ...
- java 图形化小工具Abstract Window Toolit :画笔Graphics,画布Canvas(),弹球小游戏
画笔Graphics Java中提供了Graphics类,他是一个抽象的画笔,可以在Canvas组件(画布)上绘制丰富多彩的几何图和位图. Graphics常用的画图方法如下: drawLine(): ...
- java 图形化小工具Abstract Window Toolit 常用组件:对话框Dialog FileDialog
对话框 Dialog是Window类的子类,是1个容器类,属于特殊组件,对话框是可以独立存在的顶级窗口,因此用法与普通窗口的用法几乎完全一样.但对话框有如下两点需要注意. (1),对话框通常依赖于其他 ...
- java 图形化小工具Abstract Window Toolit ImageIO缩放图片,添加水印
实现步骤: 读取图像Image src = ImageIO.read 创建目标图像BufferedImage distImage = new BufferedImage(dstWidth, dstHe ...
- java 图形化小工具Abstract Window Toolit 画笔 处理位图
具体编程来处理位图 知识点: 实现逻辑: 画板上的图片 new BufferedImage(canvasWidth,canvasHeight,BufferedImage.TYPE_INT_BGR); ...
- java 图形化小工具Abstract Window Toolit 菜单项
AWT 中的菜单由如下几个类组合而成 MenuBar: 菜单条,菜单的容器. Menu: 菜单组件,菜单项的容器,它也是Menultem的子类,所以可作为菜单项使用. PopupMenu: 上下文菜单 ...
- java 图形化小工具Abstract Window Toolit 常用组件
基本组件 Button: 按钮,可接受单击操作 Canvas: 用于绘图的画布 Checkbox: 复选框组(也可变成单选框组件) CheckboxGroup: 用于将多个checkbox组件组合成一 ...
- java 图形化小工具Abstract Window Toolit ;布局管理器FlowLayout流式布局;BorderLayout边界布局;GridLayout网格布局;CardLayou重叠卡片布局;BoxLayout方框布局;绝对定位
1.FlowLayout流式布局管理器: FlowLayout布局管理器中,组件像水流一样向某方向流动(排列),遇到障碍(边界)就折回,重头开始排列 .在默认情况下,FlowLayout局管理器从左向 ...
- 转:二十七、Java图形化界面设计——容器(JFrame)
转:http://blog.csdn.net/liujun13579/article/details/7756729 二十七.Java图形化界面设计——容器(JFrame) 程序是为了方便用户使用的, ...
随机推荐
- 智能 Request 推荐,K8s 资源利用率提升 252%
作者 王孝威,FinOps 认证从业者,腾讯云容器服务产品经理,热衷于为客户提供高效的 Kubernetes 使用方式,为客户极致降本增效服务. 余宇飞,FinOps 认证从业者,腾讯云专家工程师,从 ...
- 日志审计功能-appent多个日志
public static void main(String[] args) { Jedis jedis = new Jedis("127.0.0.1"); jedis.setnx ...
- ceph rgw的使用,dashboard和监控
1.部署RadosGW 服务 将ceph-mgr1.ceph-mgr2 服务器部署为高可用的radosGW 服务 1.1 安装radosgw 服务 root@mgr1:~# apt install r ...
- CF814E An unavoidable detour for home
考虑有每个最短路只有一条. 那么我们建出最短路树后,显然所有的非树边都是同层之间的横叉边. 那么我们考虑设\(f(i,j,k,z)\)为我们考虑到了第\(i\)个点,此时他被我们分配到了\(p\)层, ...
- OI省选算法汇总及学习计划(转)
1.1 基本数据结构 数组(√) 链表(√),双向链表(√) 队列(√),单调队列(√),双端队列(√) 栈(√),单调栈(√) 1.2 中级数据结构 堆(√) 并查集与带权并查集(√) hash 表 ...
- REPuter注释叶绿体重复序列
REPuter可注释叶绿体重复序列,包括4种类型,Forward(F), Reverse (R), Complement (C), Palindromic (P). REPuter 是可在线注释, 详 ...
- typedef 的用法
[2]typedef (1)在C语言中,允许使用关键字typedef定义新的数据类型 其语法如下: typedef <已有数据类型> <新数据类型>; 如: typedef i ...
- C#gridview颜色提示
OnRowCreated="gridStatistic_RowCreated private void FillUI() { gridStatistic.DataSource = dtSta ...
- 巩固javaweb第十二天
巩固内容: HTML 图像- 图像标签( <img>)和源属性(Src) 在 HTML 中,图像由<img> 标签定义. <img> 是空标签,意思是说,它只包含属 ...
- IT四大名著
标题耸人听闻,sorry. CPU.操作系统.编译器和数据库我都不会.我英语也不行,但我认识所有的字母.:-) 万一有人感兴趣呢?https://sqlite.org/doclist.htmlThe ...