java事件相关知识
-
Java进阶学习之事件响应在GUI中,我们看到了如何用图形树来组织一个图形界面。然而,这样的图形界面是静态的。我们无法互动的对该界面进行操作。GUI的图形元素需要增加事件响应(event handling),才能得到一个动态的图形化界面。元素, 事件, 监听器我们在GUI一文中提到了许多图形元素。有一些事件(Event)可能发生在这些图形元素上,比如:点击按钮拖动滚动条选择菜单Java中的事件使用对象表示,比如ActionEvent。每个事件有作用的图形对象,比如按钮,滚动条,菜单。 所谓互动的GUI,是指当上面事件发生时,会有相应的动作产生,比如:改变颜色改变窗口内容弹出菜单每个动作都针对一个事件。我们将动作放在一个监听器(ActionListener)中,然后让监听器监视(某个图形对象)的事件。当事件发生时,监听器中的动作随之发生。 因此,一个响应式的GUI是图形对象、事件对象、监听对象三者互动的结果。我们已经知道了如何创建图形对象。我们需要给图形对象增加监听器,并让监听器捕捉事件。 按
-
AWT/Swing——事件处理前言当用户点击图形界面上的一个按钮或者其他Component时要有所响应,这才是实现了图形界面的交互功能。如何做出这些响应我们就需要了解事件的处理机制。下面将分为以下内容介绍AWT(Swing)中事件处理机制:回到目录什么是事件通俗一点来说就是某种状态的改变,在我们的图形界面中就表现为某个按钮被点击了,窗口被关闭了等。回到目录什么是事件处理当某个事件发生时(界面中的某个Component的某个状态发生改变时),我们希望在这个时机执行一些代码来做我们希望做的事,这个就是事件处理。如点击窗口关闭按钮时,弹出对话框询问用户是否保存当前已经修改过的内容。Java是面向对象的编程语言,Java中使用监听器类来探测一个事件(改变),使用监听器类中的方法来在事件发生的时候处理事件。回到目录事件处理中的三要素事件源:是这个对象的状态改变引发的事件,事件源通常是Component。事件:事件源发生的状态改变。如按钮被鼠标左击或者被鼠标右击等。事件监听器:监听器被安装在某个Component上,负责监听这个Component具
-
事件事件流分为捕获阶段和冒泡阶段 dom0 事件的特点: dom0 事件就是直接通过 onclick 绑定到 html上的事件 <input onclick="xx"/> 或者 input.onclick = function(){ ... } 2. 清理dom0 事件时,只需给该事件赋值为 null input.onclick = null 3. 同一个元素的同一种事件只能绑定一个函数,否则后面的函数会覆盖之前的函数 4. 不存在兼容性问题 dom2 事件的特点: 1. dom2 事件是通过 addEventListener 绑定的事件 2.同一个元素的同种事件可以绑定多个函数,按照
-
JavaScript事件类型:UI事件之Error事件Error事件触发方式 1、 只要发生错误,无论是不是浏览器生成的,都会触发window对象的error事件。 注意: ① 要指定onerror事件处理程序,必须使用Dom0级技术。 ② onerror事件处理程序不会创建event对象,但它接收三个参数:错误消息、错误所在的URL和行号。 ③ Safari和Opera不支持error事件。 例子: window.onerror=function(message,url,line){ alert(message); return false; } *在事件处理程序中返回false,可以阻止浏览器报告错误的默认行为。 2、 图像的src属性中
java事件相关课程
java事件相关教程
- 1. DOM 事件 DOM 事件被发送用于通知代码相关的事情已经发生了。每个事件都是继承自Event 类的对象,可以包括自定义的成员属性及函数用于获取事件发生时相关的更多信息。事件可以表示从基本用户交互到渲染模型中发生的事件的自动通知的所有内容。—— MDNDOM 事件是指给 DOM 节点在触发某个条件下要做的事情,如:当按钮被点击的时候改变背景色。348如上述例子中按钮的 onclick 属性,当他被赋值一个函数的时,这个函数就会在按钮被点击的时候触发。onclick 属性是一种事件处理器属性,表示单击或点击事件,当想指定按钮在被点击的时候要做的事情时,就可以给这个属性赋值。赋值的函数通常被称为事件处理器,即事件被触发时候时候执行的代码块,部分文献中会称为事件处理程序。通常给 DOM 节点设置事件的操作,会被称为绑定事件,上述例子就是给一个按钮绑定了点击事件。绝大部分事件处理器属性都是以 on 开头的。
- DOM 事件流 DOM 事件流描述了 DOM 时间响应的阶段、路径。DOM 事件流也会被称为 DOM 事件模型。
- 2.2 事件源 事件源描述了触发事件的主体,对于鼠标事件,事件源通常是行为发生时鼠标焦点所在图形区域对应的图表。所有类型的图表都支持鼠标事件;部分组件支持触发鼠标事件,但默认是关闭的,需要通过设置 triggerEvent: true 来启动。组件对鼠标事件的支持情况如下:支持:title,xAxis ,yAxis, radiusAxis ,angleAxis,radar ,parallelAxis, singleAxis ,timeline,calendar;不支持: polar ,legend, grid ,datazoom, visualMap, tooltip, axisPointer, toolbox, brush, geo ,parallel, graphic。Tips:graphic 是原生图形组件,不支持echartInstance.on 接口,但可直接调用 element.onclick 等接口实现事件监听。行为事件由特定的组件、图表触发,例如 legendselectchanged 的事件源只能是 legend 组件,更多信息请参考 事件名称 一节。
- 3.2 Java 文件编写 以上代码主要实现了两个 Button 及一个 ScrollView,可以看到 ScrollView 中只有一个 LinearLayout,而 LinearLayout 中只有两个 Button,所以我们需要在 Java 代码中动态添加 Button,这里也可以让大家熟悉一下如何动态创建并添加 Button。接下来在 Java 代码中主要做两件事:为两个 Button 设置点击事件,分别实现回到顶部及跳转到底部;往 ScrollView 中添加 View,并绑定点击事件。代码如下:package com.emercy.myapplication;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.LinearLayout;import android.widget.ScrollView;import android.widget.Toast;public class MainActivity extends Activity implements View.OnClickListener { public static final int BUTTON_COUNT = 10; private ScrollView mScrollView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); findViewById(R.id.bt_to_top).setOnClickListener(this); findViewById(R.id.bt_to_bottom).setOnClickListener(this); mScrollView = findViewById(R.id.scrollView); LinearLayout layout = findViewById(R.id.button_group); for (int i = 0; i < BUTTON_COUNT; i++) { Button button = new Button(this); LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT); params.topMargin = 100; layout.addView(button, params); button.setOnClickListener(this); button.setText(i + ""); } } @Override public void onClick(View v) { switch (v.getId()) { case R.id.bt_to_top: mScrollView.fullScroll(ScrollView.FOCUS_UP); break; case R.id.bt_to_bottom: mScrollView.fullScroll(ScrollView.FOCUS_DOWN); break; default: Toast.makeText(this, "当前点击的是第" + ((Button) v).getText() + "个Button", Toast.LENGTH_SHORT).show(); break; } }}效果如下:我们在代码中通过 for 循环往 ScrollView 中添加了 10 个 Button,动态添加一个 View 主要有以下 4 步:通过构造器创建 View。设置其属性(宽、高、margin、padding 等)。设置响应事件(比如点击、触摸、滚动等)。添加到相应的 ViewGroup 中。我们在创建 Button 的同时通过setText及setOnClickListener设置了文本及点击事件,然后在点击的时候展示当前 Button 的序号。
- DOM 事件对象 Event 对象代表事件的状态,比如事件在其中发生的元素、键盘按键的状态、鼠标的位置、鼠标按钮的状态。(W3C)事件对象会在事件被触发时获得,对象包含了当前事件的一些信息,如点击事件可以获取到点击的位置,键盘输入事件可以获取到按下的键。
- 2.1 事件名称 ECharts 中存在两种类型的事件,第一种是鼠标在图形示例上的行为所触发的鼠标事件,包括:clickdbclickmousedownmousemovemouseupmouseovermouseoutcontextmenuglobalout上述事件除 globalout 外,均与 DOM Event 规范 定义的同名事件有相同的语义、触发条件。globalout 在鼠标移出图表示例范围时触发。第二种称为行为事件,在组件、图表状态发生某种业务状态迁移时触发,包括:事件名适用组件触发时机legendselectchangedlegend切换图例选中状态后的事件legendselectedlegend图例选中后的事件legendunselectedlegend图例取消选中后的事件legendscrolllegend图例滚动事件datazoomdatazoom数据区域缩放后的事件datarangeselectedvisualMap视觉映射组件中,range 值改变后触发的事件timelinechangedtimeline时间轴中的时间点改变后的事件timelineplaychangedtimeline时间轴中播放状态的切换事件dataviewchangedtoolbox工具栏中数据视图的修改事件magictypechangedtoolbox工具栏中动态类型切换的切换事件brushbrush选框添加事件globalcursortakenbrushbrush 组件捕获鼠标 cursor 时触发brushselectedbrush选框内容变更事件geoselectchangedgeogeo 中地图区域切换选中状态的事件geoselectedgeogeo 中地图区域选中后的事件geounselectedgeogeo 中地图区域取消选中后的事件axisareaselected平行坐标轴平行坐标轴范围选取事件pieselectchanged饼图饼图扇形切换选中状态的事件pieselected饼图饼图扇形选中后的事件pieunselected饼图饼图扇形取消选中后的事件mapselectchanged地图地图区域切换选中状态的事件mapselected地图地图区域选中后的事件mapunselected地图地图区域取消选中后的事件focusnodeadjacency连接图graph 图邻接节点高亮事件unfocusnodeadjacency连接图graph 的邻接节点取消高亮事件restoreECharts 实例重置 option 事件renderedECharts 实例渲染完成事件finishedECharts 实例同样是渲染完成事件,当动画或渐进渲染结束时触发上表只摘录行为事件的关键部分,更详细的介绍请参考 官网文档。行为事件的发生代表着组件实体内部状态发生了某些变更,有两种原因可能触发行为事件:用户交互行为,例如图例组件中,用户通过鼠标点击切换图例开关时,ECharts 除触发鼠标 click 事件外,还会触发 legendselectchanged 行为事件;接口调用,例如图例组件中,调用 echartInstance.dispatchAction({ type: 'legendToggleSelect' }) 后也依然会触发 legendselectchanged 行为事件。
java事件相关搜索
-
j2ee
j2ee是什么
jar格式
java
java api
java applet
java c
java jdk
java list
java map
java script
java se
java socket
java swing
java switch
java web
java xml
java 程序设计
java 多线程
java 环境变量