`

Swing事件响应基础

阅读更多

Swing 实现事件处理

基本方法:

    组件. addXXXLinster( XXXLinster 接口实现类的对象 );

 

其中

组件 :该组件需要对事件有响应。

XXXLinster 接口实现类的对象 :该对象的类实现了 XXXLinster 接口,所以该类中有处理相应事件的方法。

addXXXLinster :事件绑定,组件与事件处理对象绑定。

 

方法一:

public class ClassName implements XXXLinster{
    类中的某个方法(…){
        …
        组件.addXXXLinster(this);
        …
    }

     //接口方法
    接口需要实现的方法1(XXXEvent e){
        …
    }

    //...

    接口需要实现的方法n(XXXEvent e){
        …
    } 

}

 

 

方法二:独立监听器类实现事件处理

public class 自定义监听器类名  implements 事件监听器{
     接口需要实现的方法1(XXXEvent e){
        …
    }

    //...

    接口需要实现的方法n(XXXEvent e){
        …
    } 
}

public class ClassName {
    类中的某个方法(…){
        …
        组件.addXXXLinster(new 自定义监听器类名());
        …
    }

}

 

 

方法三:使用匿名类

public class ClassName {
    类中的某个方法(…){
        …
        组件.addXXXLinster(new 匿名类父类(){
                接口需要实现的方法1(XXXEvent e){
                    …
                }

                //...

                接口需要实现的方法n(XXXEvent e){
                    …
                } 

        });
        …
    }

}

 

 

方法四:监听器类为内部类

public class ClassName{
    public class  内部类监听器类名 implements XXXLinster{
        
        接口需要实现的方法1(XXXEvent e){
            … 
        }

        ....

        接口需要实现的方法n(XXXEvent e){
            …
        } 
    }

    类中的某个方法(…){
        …
        组件.addXXXLinster(this);
        …
    }

}

 

说明:

使用匿名类 创建事件监听器 可以不用定义接口中所有方法。

implements 监听接口  ,则需要定义所有方法。即使组件对有些事件不响应,也必须要写出这些方法。

 

 

事件适配器(Adapter)

 

使用事件适配器可以在编程时只定义需要写的事件响应方法。其他方法可以不写。

通过extends Adapter 使用 事件适配器。

 

事件监听器和对应 的Adapter

 

ComponentLinster ComponentAdapter
ContainerLinster ContainerAdapter
FocusListener FocusAdapter
KeyListener KeyAdapter
MouseListener MouseAdapter
MouseMotionListener MouseMotionMouseAdapter
WindowFocusLinster WindowAdapter
WindowStateListener      同上
WindowList ener 同上

注意:

上述所有的XXXAdapter都直接继承于Object类。即没有Adapter类。

java为单继承。一旦继承了某个Adapter。则无法继承其他的类。

 

分享到:
评论

相关推荐

    Java语言程序设计课程设计实训项目——应用Java-Swing-GUI组件技术实现课程选课系统GUI窗口(第1部分).pdf

    版权所有,盗版必究, 5/19 页 (2)分别创建出 5 个不同的事件响应方法 5、编程 5 个不同按钮的事件响应方法的功能实现代码 StudentManageInter oneStudentManage=null; CourseManageInter oneCourseManage=null; ...

    Java图形用户界面

    从另一角度来看,Swing和AWT无论是布局管理器还是事件处理机制,以及对一些重量容器的保留和使用,都是我们非常熟悉的内容,其原理我们已在AWT一章做了详细介绍,因此,AWT作为Swing的基础,是需要很好掌握的,希望...

    Java-GUI-设计与实现.pptx.pptx

    Java GUI编程基础概述 Java GUI编程基础是Java编程语言中的重要组成部分,它提供了丰富的工具和接口...Java GUI事件处理机制是实现交互性的关键,通过监听和响应用户的操作,可以实现界面的动态更新和功能的逻辑处理。

    毕设项目,同步用的.rar

    带你深入学习如何制作 Swing 图形化界面以及为 UI 组件设置事件响应逻辑。 2. Java 实现日记软件 做一个简单的 Java 日记软件,可以实现用户的注册、登录以及对日记的各种操作。同学们可以用自己做出的日记软件...

    Java开发技术大全 电子版

    14.11.5“取消”按钮的事件响应代码548 14.11.6完整的程序548 14.12GUI程序设计实例3——字体选择对话框553 14.12.1界面的实现554 14.12.2监听ListSelectionEvent事件556 14.12.3按钮响应事件556 14.12.4...

    基于 Java的扫雷程序毕业设计

    事件处理: 实现了事件监听器,响应用户的鼠标点击事件 功能亮点: 自定义难度: 玩家可以根据自己的喜好选择不同的游戏难度。 计时功能: 游戏会记录玩家完成游戏的时间,增加游戏的挑战性。 标记功能: 提供了...

    Java基础实验报告图形用户界面设计.doc

    理解委托时间处理模型,掌握不同组件、不同事件的事件处理方法,设计出能够响应事 件的Java图形用户界面。 熟悉在组件上绘图的方法。 二、实验题目 用表格存储并显示个人所得税税率表,给定一个月收入值,计算应缴...

    Java语言基础下载

    事件驱动及事件处理 516 内容总结 519 独立实践 520 第二十七章:JavaScript进阶 521 学习目标 521 基于对象的JavaScript语言 522 对象的基础知识 522 this关键词 523 new运算符 523 常用对象的属性和方法 525 算术...

    Java毕业设计-JAVA002打飞机游戏设计(程序+论文).rar

    本资源提供了一个基于Java语言开发的打飞机游戏项目,旨在帮助Java学习者掌握基本的图形用户界面编程、事件处理和绘图技术。该项目不仅可作为毕业设计的参考,还可用于日常练习和技能提升。 **核心功能与特点:** ...

    java必了解的六大问题

    *第二阶段:java界面编程,包括AWT,事件机制,SWING,这个部分也可以跳过,用的时候再看都能来及; *第三阶段:java API:输入输出,多线程,网络编程,反射注解等,java的精华部分; *第四阶段:数据库SQL...

    Java 语言基础 —— 非常符合中国人习惯的Java基础教程手册

    面向对象编程的基础 要了解面向对象编程(OOP)的基本概念,需要理解 OOP 的三个主要概念,它们撑起 了整个 OOP 的框架。这三个概念是:封装、继承性和多态性。除此以外,还需了解对象、 类、消息、接口、及抽象等...

    Java语言的科学与艺术 斯坦福大学经典教材

    9.7 编程练习 第10章 事件驱动程序 10.1 Java事件模型 10.2 简单的事件驱动程序 10.3 响应鼠标事件 10.4 响应键盘事件 10.5 创建简单的GUI 10.6 Swing 交互器层次结构 10.7 管理组件布局 10.8 使用TableLayout类 ...

    Java并发编程(学习笔记).xmind

    (4)用户界面具备更短的响应时间:现代GUI框架中大都使用一个事件分发线程(类似于中断响应函数)来替代主事件循环,当用户界面用有事件发生时,在事件线程中将调用对应的事件处理函数(类似于中断处理函数) ...

    jopencc:OpenCC的Java分支

    建Open引言JOpenCC是基于Java的工具,可将繁体中文转换为简体中文,反之亦然。 该项目是一个Java端口其... 选择SWT而不是Swing是因为该接口在SWT中看起来更原生且响应更快。 但是,Swing端口应该很容易。界面提供英文,

    从Java走向Java+EE+.rar

    5.3 使用Eclipse和Tomcat开发Servlet实例——输出字符串响应 72 5.4 小结 77 第6章 JSP——前后台更好地分离 79 6.1 JSP的概念 79 6.2 JSP页面的组成 80 6.2.1 JSP的指令元素 82 6.2.2 JSP的脚本元素 ...

    Java并发编程实战

    9.1.2 Swing中的线程封闭机制158 9.2 短时间的GUI任务160 9.3 长时间的GUI任务161 9.3.1 取消162 9.3.2 进度标识和完成标识163 9.3.3 SwingWorker165 9.4 共享数据模型165 9.4.1 线程安全的数据模型166 ...

    RMI-Whiteboard:Java RMI 白板 - “新兴技术”课程作业

    缺少 UI - 练习不是在 Swing UI 开发中,而是在 RMI 方面。 服务器的主要方法保存在 ServerApp 中 - 它使用自托管的 RMI 注册表。 客户端的主要方法包含在 WhiteboardClient 中 - RMI 注册表的 URL 可以作为...

    新版Android开发教程.rar

    ----------------------------------- Android 编程基础 1 封面----------------------------------- Android 编程基础 2 开放手机联盟 --Open --Open --Open --Open Handset Handset Handset Handset Alliance ...

    Eclipse权威开发指南2.pdf

    8.6.3 使用并发性架构维持对用户的快速响应..... 210 8.6.4 通过功能组管理用户界面..... 210 8.6.5 扩展Workbench集成开发环境..... 211 8.7 本章小结...... 212 8.8 参考文献...... 212 第9章 插件开发入门 213...

    Eclipse权威开发指南3.pdf

    8.6.3 使用并发性架构维持对用户的快速响应..... 210 8.6.4 通过功能组管理用户界面..... 210 8.6.5 扩展Workbench集成开发环境..... 211 8.7 本章小结...... 212 8.8 参考文献...... 212 第9章 插件...

Global site tag (gtag.js) - Google Analytics