java监听器模式使用场景_常用监听器及其应用场景
常用监听器举例,及应用场景分析:
已用过的有动作监听器,鼠标监听器,鼠标移动监听器
1、MouseAdapter可以包括以下几个监听器的方法,因此,我们写的时候可以直接写这个
public abstract class MouseAdapter implements MouseListener, MouseWheelListener, MouseMotionListener {
public void mouseClicked(MouseEvent e){}//鼠标点击时
public void mousePressed(MouseEvent e) {}//鼠标按下时
public void mouseReleased(MouseEvent e) {}//鼠标释放时
public void mouseEntered(MouseEvent e) {}//进入鼠标
public void mouseExited(MouseEvent e) {}//退出鼠标
public void mouseWheelMoved(MouseWheelEvent e){}//滚轮移动
public void mouseDragged(MouseEvent e){}//鼠标拖拽
public void mouseMoved(MouseEvent e){}//鼠标移动
}
2、动作监听器ActionListener、如果是接口的话必须将接口中的方法全部重写
public interface ActionListener extends EventListener {
public void actionPerformed(ActionEvent e{}
}
3、鼠标监听器MouseListener
public interface MouseListener extends EventListener {
public void mouseClicked(MouseEvent e){}
public void mousePressed(MouseEvent e){}
public void mouseReleased(MouseEvent e){}
public void mouseEntered(MouseEvent e){}
public void mouseExited(MouseEvent e){}
}
每一个事件对应一个监听器:
ActionEvent ActionListener
MouseEvent MouseListener
通常我们是将监听器定义为一个类,在主类中创建监听器对象,通过监听器的构造方法,将主类中已经定义的实参传代替监听器中定义的形参,并且赋值给监听器中定义的属性。监听器是在动作发生时才会起作用。
如在主类中定义:
//从窗体上获取画布对象
//获取窗体在屏幕上所占据的区域,这块区域是可以改变颜色的
java.awt.Graphics g = this.getGraphics();
//1、在主类中,创建监听器对象。2、传值
DrawListener dlis = new DrawListener(g);
//3、给窗体加上鼠标监听器
this.addMouseListener(dlis);
在实现监听器的类中:
private java.awt.Graphics gr;
//形参g,调用函数时,将实参的值代替形参,即将
public DrawListener(java.awt.Graphics g){
gr = g;
}
再将监听器中所有的方法重写即可。如此便能做到在画布中画出直线
java监听器模式使用场景_常用监听器及其应用场景相关推荐
- java状态模式例子答案_[转载]java设计模式_状态模式(带例子)
状态模式(STATE) Java深入到一定程度,就不可避免的碰到设计模式这一概念,了解设计模式,将使自己对java中的接口或抽象类应用有更深的理解.设计模式在java的中型系统中应用广泛,遵循一定的编 ...
- java 工厂模式的写法_设计模式-Java-简单工厂模式--BitmapFactory
上一篇,我们说了下MonkeyLei:设计模式-Java-观察者模式-RxJava 其中还利用到了反射的知识,另外也附上了很多我觉得分析还可以的链接. 这里我们看看简单工厂这块.除了这个还有其他几个: ...
- java工厂模式式代码_简单工厂模式及其简单Java案例代码实现
说明:本文是<大话设计模式>的学习记录及结合网上相关信息编写,原书代码例子采用C#编写,本文采用Java稍加改写.若有不当,欢迎指正,共同进步.java 1.简单工厂模式概述:设计模式 简 ...
- java 工厂模式的写法_[java设计模式] 工厂模式解析
什么是工厂模式? 我的总结是: 遵守软件设计中的开闭原则和依赖反转原则, 并且客户端只需通过参数来创造多个对象, 并且在创建过程中,创建对象的过程对客户端是透明的. 这种开发模式叫做工厂模式. 出现原 ...
- java状态模式所有情况_轻松掌握Java状态模式
定义:在状态模式(State Pattern)中,类的行为是基于它的状态改变的. 特点: 1.封装了转换规则. 2.枚举可能的状态,在枚举状态之前需要确定状态种类. 3.将所有与某个状态有关的行为放到 ...
- java工具类怎么写_常用的Java工具类——十六种
常用的Java工具类--十六种 在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类.以下工具类.方法按使用流行度排名,参考数据来源于Github上随机选 ...
- java单例模式的应用场景_单例模式的常见应用场景
单例模式(Singleton)也叫单态模式,是设计模式中最为简单的一种模式,甚至有些模式大师都不称其为模式,称其为一种实现技巧,因为设计模式讲究对象之间的关系的抽象,而单例模式只有自己一个对象,也因此 ...
- java开源框架有哪些_常用的Java微服务开源框架有哪些呢
随着程序规模的扩大以及复杂性增大,越来越多的Java程序员选择使用微服务进行项目设计研发.微服务的出现有助于开发人员用更低的成本和更少的错误来开发程序,因此也成为Java开发人员最重要的技能之一.但常 ...
- java mvc框架有哪些_常用的MVC框架有哪些
展开全部 常用的MVC框架有JSP + servlet + javabean的模式e69da5e887aa3231313335323631343130323136353331333431373232. ...
最新文章
- Linux VIM IDE
- python decode hex_在python2.7中使用b64decode()将base64转换为hex
- UP_DOWN_REQUEST
- Linux下VNC配置多个桌面和修改密码 不会当系统重启vnc失效
- Android用户界面设计:框架布局
- java字符流写入式乱码_字节流乱码与字符流乱码
- C语言 文件读写 EOF - C语言零基础入门教程
- ELKElasticSearch5.1基础概念及配置文件详解【转】
- 怀念08,憧憬09;08盘点,09启航。
- 100道MySQL数据库面试题解析
- php自定义请求headers,php通过header发送自定义数据方法
- 战斗部毁伤效能评估软件系统
- windows光标移动快捷键操作
- windows端的MarginNote:BookxNote
- 最终幻想13-2时钟迷题破解工具
- Bluemix平台打造DC/OS云计算平台(一)
- HTML5+JavaScript调用摄像头拍照或者摄像
- Java 空格“ ”、空字符串“”和null区别
- C语言中%s,%m.ns 和 %e,%m.ne 的意思
- NLP01(自然语言处理)第一章 绪论
热门文章
- 指定结构体字节对齐方式
- 【Python】青少年蓝桥杯_每日一题_10.19_回文数和个数
- 【Linux - mysql】 unknown variable ‘sql_mode=NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZER
- 软件测试-PR录制脚本程序的时候出现license invalid,error code=-13或者-24的错误
- 怎样通过css控制table的部分td
- Java “Resource leak: ‘scanner‘ is never closed“警告的解决办法
- itextpdf api帮助文档_我开源了一个小工具,可以帮你轻松生成 SpringBoot API 文档...
- oracle和dba,oracle db、dba和rdba
- 底部菜单 点击突起_iOS开发之上下文交互菜单(UIContextMenuInteraction)
- 数据中心能耗结构、PUE、WUE