首页
学习
活动
专区
圈层
工具
发布

【Java AWT 图形界面编程】事件处理机制 ③ ( AWT 中常见的事件和事件监听器 | 低级事件 | 组件事件 | 窗口事件 | 鼠标事件 | 高级事件 | 动作事件 | 事件监听器 )

文章目录 一、AWT 中常见的事件 1、低级事件 2、高级事件 二、AWT 中常见的事件监听器 一、AWT 中常见的事件 ---- AWT 中事件分为两大类 , 低级事件 和 高级事件 ; 低级事件...: 基于某个特定基本动作的事件 , 如 点击 , 拖动 , 获取焦点 , 失去焦点 等固定的简单操作 ; 高级事件 : 不基于某个特定事件 , 而是 根据 功能的具体含义 定义的事件 ; 1、低级事件...; 二、AWT 中常见的事件监听器 ---- 事件监听器 与 事件是一一对应的 , 只需要将事件的 Event 改成 Listener 即可 ; AWT 中常见的事件监听器 : 组件事件监听器 : ComponentListener..., 监听 组件的 尺寸变化 , 位置变化 , 可见/隐藏 属性变化 ; 容器事件监听器 : ContainerListener , 监听 Container 容器中 添加 / 删除 组件 ; 窗口事件监听器...; 绘制事件监听器 : PaintListener , 监听 组件绘制时触发的事件 , 当调用 update paint 函数 ; 动作事件监听器 : ActionListener, 监听 组件 ,

3.1K20

【Java AWT 图形界面编程】事件处理机制 ① ( 事件处理步骤 | 创建事件源对象 -> 自定义事件监听器 -> 创建监听器实例对象 -> 事件源绑定事件监听器 )

事件都被封装在了 Event 中 , 具体的 事件信息可以从 Event 实例对象中获取 ; 事件监听器 : 注册在 事件源 也就是 组件上的 监听器 , 如果监听到 事件发生 , 就会触发指定代码执行...; 注册监听 : 将 事件监听器 绑定 到 事件源 的操作 , 就是 注册监听 ; 事件处理过程 : 首先 , 需要将事件监听器 注册给 事件源 ; 然后 , 外部的操作 作用在了 事件源 组件 上...; 再后 , 事件源 生成了 Event 事件对象 , 其中封装了 外部操作 的各种数据 ; 最后 , 事件监听器 监听到了 事件 , 开始 执行 监听器 中的代码 , 在事件监听器中可以获取到事件源...生成的 事件对象 ; 三、事件处理步骤 ---- 事件处理步骤 : 首先 , 创建 事件源 实例对象 , 也就是 Component 组件对象 ; 然后 , 自定义 事件监听器 类 , 该类实现 事件监听器接口..., 需要重写指定的方法 , 一般都使用匿名内部类 ; 再后 , 创建 上述 自定义 事件监听器 实例对象 ; 最后 , 调用 事件源 添加 事件监听器 的函数 , 在 事件源 上 注册 事件监听器 ;

2.3K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【Android 事件分发】ItemTouchHelper 源码分析 ( OnItemTouchListener 事件监听器源码分析 )

    ) 【Android 事件分发】ItemTouchHelper 源码分析 ( OnItemTouchListener 事件监听器源码分析 ) ---- 文章目录 Android 事件分发 系列文章目录...一、OnItemTouchListener 事件监听器引入 二、OnItemTouchListener 触摸事件拦截方法 onInterceptTouchEvent 1、onInterceptTouchEvent...一、OnItemTouchListener 事件监听器引入 ---- 在上一篇博客 【Android 事件分发】ItemTouchHelper 事件分发源码分析 ( 绑定 RecyclerView )...mOnItemTouchListener , 这是 RecyclerView 的 ItemTouchHelper 的核心 ; OnItemTouchListener 是 RecyclerView 中定义的作用与条目组件的触摸监听器..., 分析手指触摸的 按下 , 移动 , 抬起 事件 ; 在 OnItemTouchListener 触摸监听器中 , onInterceptTouchEvent 方法处理的是事件拦截机制 , onTouchEvent

    2.9K20

    源码分析ElasticJob事件监听器

    ElastciJobListener任务执行事件监听器提供如下两个方法: void beforeJobExecuted(final Sha-rdingContexts shardingContexts...上述回调函数是分片级的,也就是说默认情况下,同一个任务的多个分片都会执行beforeJobExecuted、afterJobExe-cuted方法,如果某些情况同一个任务只需在最后一个分片执行之前执行,...AbstractDistributeOnceElasticJobListener分布式作业中只执行一次的监听器。...基于ZK的开发模式触发一次删除操作,肯定会有事件监听器来监听该节点的删除事件,从而触发其他节点的唤醒操作,果不奇然Elastci-Job提供GuaranteeListenerManager事件监听来监听...{namespace}/jobname/g-uarantee/started节点的删除事件。

    1.6K30

    Android中单个View的触摸事件分发机制

    接下来就进行分析对于view的触摸事件的执行,分析几两个问题, 为什么onClick时不会产生点击和长按的冲突? 为什么onLongClick时会执行完长按操作,再紧接着直接点击操作?...屏幕的滑动事件?...对于view的触摸事件有三个动作: ACTION_DOWN:按下 ACTION_MOVE:移动 ACTION_UP:弹起 对于一个view,有touch事件,drag事件,click事件,所涉及到的listener...默认的是返回的false 在此声明:当屏幕进行触摸时首先是activity感受到该触摸事件,然后对事件进行分发处理,也就是说要不要传给activity中的view进行处理。...activity首先将事件分发到你所定义的最外层的view,在本程序中我只定义了一个view,所以当dispatchTouchEvent返回false进行事件分发时就理所当然的分发给了我所定义的view

    1.6K20

    【Android 事件分发】ItemTouchHelper 源码分析 ( OnItemTouchListener 事件监听器源码分析 二 )

    事件分发】事件分发源码分析 ( Activity 中各层级的事件传递 | Activity -> PhoneWindow -> DecorView -> ViewGroup ) 【Android 事件分发...) 【Android 事件分发】ItemTouchHelper 源码分析 ( OnItemTouchListener 事件监听器源码分析 ) 【Android 事件分发】ItemTouchHelper...源码分析 ( OnItemTouchListener 事件监听器源码分析 二 ) ---- 文章目录 Android 事件分发 系列文章目录 一、onTouchEvent 事件消费源码分析 1、onTouchEvent...事件分发】ItemTouchHelper 源码分析 ( OnItemTouchListener 事件监听器源码分析 ) 主要分析了 给 RecyclerView 设置的 OnItemTouchListener...监听器的 onInterceptTouchEvent 触摸事件拦截方法 , 本篇博客中主要分析另外一个 触摸事件消费方法 onTouchEvent ; 在 onTouchEvent 事件消费 中 ,

    2.2K20

    WPF 多个 StylusPlugIn 的事件触发顺序

    如果在 WPF 使用 StylusPlugIn 同时在同一个界面用多个元素都加上 StylusPlugIn 那么事件触发的顺序将会很乱 我建议是不要让 StylusPlugIn 有重叠,在没有理解 StylusPlugIn...因为可能有小伙伴移动了一个元素就让你的代码的行为和之前写的不一样 如果多个 StylusPlugIn 附加的元素没有重叠,那么所有元素的工作都会符合预期。...对同容器内两个重叠元素,将会同时触发两个元素的 StylusPlugIn 事件,不同的是在最底层的元素将会在触摸线程触发,而在最上层的元素将会是主线程触发 ?...对同容器内多个重叠元素,将知道最上层和最底层的元素会触发事件,不同的是在最底层的元素将会在触摸线程触发,而在最上层的元素将会是主线程触发 ?...Down 都被调用,但是不同的是 Stylus 2 是在主线程调用 同容器内多个重叠元素 在上面告诉大家同容器内两个重叠元素将会都触发事件 但是千万不要认为多个重叠的元素都会被触发,其实只有最先加入视觉树的元素和命中到的元素会触发

    1.7K30

    WPF 多个 StylusPlugIn 的事件触发顺序

    如果在 WPF 使用 StylusPlugIn 同时在同一个界面用多个元素都加上 StylusPlugIn 那么事件触发的顺序将会很乱 我建议是不要让 StylusPlugIn 有重叠,在没有理解 StylusPlugIn...因为可能有小伙伴移动了一个元素就让你的代码的行为和之前写的不一样 如果多个 StylusPlugIn 附加的元素没有重叠,那么所有元素的工作都会符合预期。...对同容器内多个重叠元素,将知道最上层和最底层的元素会触发事件,不同的是在最底层的元素将会在触摸线程触发,而在最上层的元素将会是主线程触发 如果是一个附加 StylusPlugIn 的容器,包含一个附加...StylusPlugIn 的元素,那么只有元素会触发在触摸线程触发事件 代码放在 github 建议下载代码测试 点击查看同容器内两个重叠元素例子 点击查看同容器内多个重叠元素例子 点击查看容器和包含一个元素例子...Down 都被调用,但是不同的是 Stylus 2 是在主线程调用 同容器内多个重叠元素 在上面告诉大家同容器内两个重叠元素将会都触发事件 但是千万不要认为多个重叠的元素都会被触发,其实只有最先加入视觉树的元素和命中到的元素会触发

    1.7K20

    重学SpringBoot3-事件与监听器

    事件和监听器的基本概念 在 Spring 框架中,事件(Events)是对发生在应用程序或 Spring 上下文中的操作或更改的封装。事件可以由任何组件发布,并由感兴趣的组件(监听器)接收和处理。...监听器(Listeners)是定义了如何响应特定事件的组件。在 Spring 中,监听器订阅特定类型的事件,并在事件发生时被自动触发。...定义和使用自定义事件 除了使用 Spring Boot 提供的事件外,你还可以定义自己的事件和监听器来处理特定的业务逻辑。...默认情况下,事件的处理是同步进行的,即事件监听器的处理逻辑会阻塞发布事件的线程。...总结 Spring Boot 中的事件和监听器提供了一种强大且灵活的方式来实现应用组件间的松耦合通信。

    1K10

    Spring | 事件监听器应用与最佳实践

    1.1 Spring事件监听器简介 Spring事件监听器是Spring应用中用于处理事件的一种机制。事件通常代表应用状态的变化,而监听器则负责响应这些变化。...事件监听器原理 理解Spring事件监听器的原理,是有效使用此机制的前提。...事件发布器的角色是将事件通知到所有注册的监听器。...复杂性: 当系统中存在大量的监听器和事件时,管理和维护这些监听器和事件的复杂性将增加,可能导致错误和难以调试的问题。 不适合所有场景: 监听器并不适合所有场景。...有时,事件需要按照一定的顺序传播,或者在某个监听器处理后停止传播,这时就需要精心设计事件的传播策略。 有效管理监听器:对于系统中的所有监听器,需要进行有效的管理和维护。

    3.4K81

    xwiki开发者指南-编写事件监听器

    有几种方法来编写事件侦听器,以应对一些事件: 用Java,作为一个XWiki组件 在一个wiki页面,作为一个Wiki组件 在Wiki页面,使用Groovy,通过编写一个XWiki组件并手动注册 本教程将在几个不同的例子展示所有的技术...在页面保存时添加内容 我们的目标是监听DocumentCreatingEvent和DocumentUpdatingEvent事件(注意这些事件会在页面保存之前触发,因此我们代码不需要执行保存操作)。...,它是监听器的technical id) Component Scope: Current Wiki这意味着监听器只能在当前wiki下是有效。...Global这将使得监听器在所有租户下可用(即所有wiki)。对于Current User你不需要任何特殊的权限,但是监听器只会对你的用户可用。...当你保存EventListeners.DocumentSaveListener页面,你定义的组件(你的事件监听器)会自动注册和可用 你可以通过创建一个新的页面或者编辑一个现有的页面来验证它的效果,当你保存时

    97420

    Java常用事件监听器与实例分析

    在swing事件模型中由三个分离的对象完成对事件的处理,分别为事件源、事件和监听程序,由事件源触发一个事件,它由一个或多个监听器进行监听,并且由监听器触发事件并执行相应的事件。...然而对于事件监听器,其实就是一个“实现特定监听器接口”类对象,事件几乎都以对象来表示,它是某种事件类的对象,事件源(控件,如按钮)会在用户做出相应的动作(如点击按钮)时产生事件对象, 在这里需要注意的是...在Java中常用的两种事件监听器是“动作事件监听器”和“焦点事件监听器”。接下来我和大家分别分享一下这两种常用的事件监听机制。...动作时间监听器 动作事件(ActionEvent)监听器是swing中比较常用的一种监听器,在Java窗体中很多事件都需要使用它来进行监听,如我们常见的按钮点击事件等,以下是动作事件监听器的接口和常见的事件源...一般情况下,为事件源做监听事件应使用匿名内部类的形式,如上例代码为按钮添加事件时采用匿名内部类的形式 焦点事件监听器 焦点事件(FocusEvent)监听器在实际使用中同动作事件监听器的使用一样广泛

    3.8K10

    Spring Boot 启动事件和监听器,太强大了!

    ---- 自定义启动事件监听器 既然我们知道了 Spring Boot 在启动过程中的各个事件,那么我们就可以在每个环节来处理一些我们想做的事情,只需要自定义一个监听器来监听某个事件就可以了。...因第 8 步的事件和第 6 步的事件同名,我们可以根据事件的状态来区分到底是哪一个环节的事件 。...,可以直接在监听器上使用 @Component 注解即可,否则需要使用第一种方法的自动注册,因为 ApplicationContext 并未创建,这时的 Bean 是不能被加载的。...一般来说,不建议使用事件和监听器来实现比较耗时和繁重的任务,这样会影响应用程序的正常启动,考虑使用 Spring Boot 的 application/ command-line runners 来进行实现...本文只是介绍了一下 Spring Boot 启动过程中的事件及如何实现自定义监听器,怎么实现一个业务上的自定义事件和监听器不在本文范围之类,后续栈长再开一篇,关注公众号Java技术栈第一时间推送,不要走开

    6.8K51

    JavaSwing_8.1:焦点事件及其监听器 - FocusEvent、FocusListener

    用于接收键盘焦点事件的抽象适配器类。 此类中的方法为空。 此类存在的目的是方便创建监听器对象。 继承此类来创建 FocusEvent 监听器,并针对感兴趣的事件重写方法。...使用扩展的类创建一个侦听器对象,然后使用组件的 addFocusListener 方法向组件注册该监听器。...要获取许多组件的焦点状态,请考虑在KeyboardFocusManager类上实现PropertyChangeListener实例,如如何使用焦点子系统中的将焦点更改跟踪到多个组件中所述。...下面的示例演示焦点事件。该窗口显示各种组件。注册在每个组件上的焦点侦听器报告每个焦点获得和焦点丢失的事件。对于每个事件,将报告焦点更改中涉及的其他组件,即相反的组件。...例如,当焦点从按钮转到文本字段时,按钮会触发焦点丢失事件(文本字段为相反的组件),然后文本字段会触发焦点获取事件(带有按钮作为相反的组件)。失去焦点以及获得焦点的事件可能是暂时的。

    7.4K10

    Spring拓展知识:后置处理器与事件监听器

    事件监听器 可以监听我们spring中发生的时间,我们也可以自定义一个spring的事件监听器 我们学习这个主要是要知道spring在容器中执行的时候都派发了什么事件 这里我们实现ApplicationListener...Listener.xml将事件监听器加入到spring容器中 ... 修改事件监听器,让我们来看看是在生成bean的时候都派发了什么事件吧 public class myApplicationListener implements ApplicationListener..." + event); //这里怕判断是如果有我们自己的定义内容将事件监听器强转成我们的自定监听器,保证自己的自定义事件也可以输出 if (event instanceof MyApplicationEvent...MyApplicationEvent event = new MyApplicationEvent("事件内容", "james", "123@qq,com"); //发送事件

    65700
    领券