当前位置:首页 » 编程语言 » 事件java

事件java

发布时间: 2022-06-25 17:31:46

‘壹’ java的事件处理是什么

打个比方:如果用户用鼠标单击了按钮对象button,则该按钮button就是事件源,而java运行时系统会生成ActionEvent类的对象actionE,该对象中描述了该单击事件发生时的一些信息,然后,事件处理者对象将接收由java运行时系统传递过来的事件对象actionE并进行相应的处理。
由于同一个事件源上可能发生多种事件,因此java采取了授权处理机制,事件源可以把在其自身所有可能发生的事件分别授权给不同的事件处理者来处理。比如在Canvas对象上既可能发生鼠标事件,也可能发生键盘事件,该Canvas对象就可以授权给事件处理者一来处理鼠标事件,同时授权给事件处理者二来处理键盘事件。有时也将事件处理者称为监听器,主要原因也在于监听器时刻监听着事件源上所有发生的事件类型,一旦该事件类型与自己所负责处理的事件类型一致,就马上进行处理。授权模型把事件的处理委托给外部的处理实体进行处理,实现了将事件源和监听器分开的机制。事件处理者(监听器)通常是一个类,该类如果要能够处理某种类型的事件,就必须实现与该事件类型相对的接口。例如例5.9中类ButtonHandler之所以能够处理ActionEvent事件,原因在于它实现了与ActionEvent事件对应的接口ActionListener。每个事件类都有一个与之相对应的接口。将事件源对象和事件处理器(事件监听器)分开。
使用授权处理模型进行事件处理的一般方法归纳如下:
1.对于某种类型的事件XXXEvent, 要想接收并处理这类事件,必须定义相应的事件监听器类,该类需要实现与该事件相对应的接口XXXListener;
2.事件源实例化以后,必须进行授权,注册该类事件的监听器,使用addXXXListener(XXXListener ) 方法来注册监听器。
这是我的一点个人见解,希望对你有帮助,加油。

‘贰’ java中的事件处理机制是怎样的

JAVA中当事件发生时,他不会进行广播,而是仅仅向关心此事件的对象发送消息。那么他怎么知道谁“关心”此事件呢。
这就要求关心此事件的对象,先行向事件的发出方进行注册,表示我关心此事件,当事件发生时请通知我。

【简单来说】:就是事件的“处理方”向事件的“发出方”先行注册,当事件发生时,事件的“发生方”负责通知事件的“处理方”。

譬如我编写一个窗口,用到了JFrame,我想实现一个功能,当按下Q键时,窗口关闭。

‘叁’ 简述java事件处理机制

java事件处理机制你必须得明确以下几个概念:
核心:java采用的是事件源——事件监听器模型
1:事件(event):是指一个状态的改变,或者一个活动的发生。例如,简单常见的是单击一个按钮,或者输入一个按键都是一个事件。
2:事件源(event source):能够产生事件的对象称为事件源,如文本框,按钮,下拉列表等。
3:事件监听器(event listener):需要一个对象对事件源进行监听,以便对发生的事件做出处理,该对象就是事件监听器。事件源通过调用相应的方法将某个对象作为自己的监听器。无论应用程序还是小程序都采用这一机制。
例,对于按钮,注册监听器的方法是 addActionListener(监视器);:
4: 事件源获得监听器之后,相应的操作就会导致事件的发生,并通知监听器,监听器就会做出相应的处理。
5:处理事件的接口:监听器负责处理事件源发生的事件。为了处理事件源发生的事件,监听器会自动调用一个方法来处理事件,该方法定义在相应事件的接口中。

‘肆’ Java 事件处理

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
//该类用了3个接口,必须实现所有方法
public class Action extends JFrame implements KeyListener,ActionListener,MouseWheelListener{
JTextArea ta;
JButton b;
JScrollPane sp;
JPanel p;
static int i = 12;
public Action(){
ta = new JTextArea("注意:滑动滚轮时此文本域里的文字大小变化(增大或减少1)");
ta.setEditable (false);//不可编辑
ta.setLineWrap (true);//自动换行
ta.setForeground (Color.BLUE);//字体颜色
sp = new JScrollPane(ta);
setFont(i);

b = new JButton("退出");
p = new JPanel(new FlowLayout(FlowLayout.RIGHT));
p.add (b);
this.add (sp,BorderLayout.CENTER);
this.add (p,BorderLayout.SOUTH);
this.setTitle ("Java事件处理");
this.setSize (400,300);
this.setLocationRelativeTo (null);//窗口居中
this.setVisible (true);
this.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
ta.addKeyListener (this);
sp.addMouseWheelListener (this);
b.addActionListener (this);
}
public void setFont(int i){
ta.setFont (new Font(Font.SERIF,Font.PLAIN,i));
sp.setBorder (BorderFactory.createTitledBorder ("字体大小:"+i));
}
public static void main(String[] args){
JFrame. (true);
new Action();
}
public void keyPressed(KeyEvent e){

if(e.getKeyText(e.getKeyCode()).equals ("A")){
if(this.isVisible ()==true){
this.setVisible (false);
}else{
this.setVisible (true);
}
JFrame f = new JFrame("新窗口");
f.setBounds(400,200,300,300);
f.setVisible (true);
}
}
public void keyReleased(KeyEvent e){}
public void keyTyped(KeyEvent e){}
public void actionPerformed(ActionEvent e){
System.exit (0);
}
public void mouseWheelMoved(MouseWheelEvent e){

if(e.getWheelRotation ()>0) i++;//滚轮向下滚每次 +1
else i--;
setFont(i);
}
}

‘伍’ java中的事件

javax.swing.JButton cannot be cast to javax.swing.JTextField
e获取到的资源是button按钮,不是textField文本框,转换时就报错了

‘陆’ java什么是事件什么是事件源

常见的事件包括 移动鼠标 , 单双击鼠标各个按钮 ,单击按钮 ,在文本字段输入 ,在菜单中选择菜单项 ,在组合框中选择、单选和多选 ,拖动滚动条 ,关闭窗口.........
事件源 与用户进行交互的GUI组件,表示事件来自于哪个组件或对象
比如要对按钮被按下这个事件编写处理程序,按钮就是事件源

‘柒’ java中什么是事件源,事件的处理过程是什么

在java的图形界面开发中,要让图形界面接收到用户的操作,就要给各个组件添加事件处理机制。

事件 : 为了实现用户对图形界面组件的操作,定义了一些事件

鼠标事件:单击,双击,滚轮等....

键盘事件 按下键盘,松开按键等...

焦点事件 :焦点获得 ,焦点失去...

窗口事件: 窗口打开,窗口关闭等....


事件源: 发声事件的场所. 比如按钮被点击,那么事件源就是按钮

文本框获得焦点. 那么事件源就是文本框

窗口被关闭,那么事件源就是窗口


事件源-----产生----->事件------>被事件监听器发现------>进入事件处理代码

importjava.awt.Frame;
importjava.awt.event.WindowAdapter;
importjava.awt.event.WindowEvent;
{//窗口就是事件源
publicDemoAction(){
this.setTitle("窗口关闭");
this.setLocation(400,200);
this.setSize(360,280);
//给窗口绑定一个事件监听器
this.addWindowListener(newWindowAdapter(){
@Override
publicvoidwindowClosing(WindowEvente){//事件WindowEvent
System.exit(0);//关闭窗口事件,那么退出jvm
}
});
this.setVisible(true);
}

publicstaticvoidmain(String[]args){
newDemoAction();
}
}

‘捌’ java中事件,事件源和事件监听器概念,使用事件监听器惊醒事件处理的过程

  1. 事件:当用户在界面上执行一个操作,例如按下键盘、拖动或者单击鼠标时,都将产生一个事件。Java中事件是用来描述不同类型用户操作的对象,Java中有很多不同类型的事件。例如:单击,双击,右击,拖动,键盘的按下、释放,文本域内容改变等。

  2. 事件源:产生事件的组件就是一个事件源。例如,当在一个Button上单击鼠标是,将产生一个ActionEvent类型的事件,而这个Button就是事件源

  3. 事件监听器:就是调用事件处理方法的对象。当界面操作事件产生并被发送到产生事件的组件时,该组件将把事件发送给能接受和处理该事件的监听器。

‘玖’ 在JAVA中什么是事件事件包括哪些内容什么是事件监听器

事件是可以被控件识别的操作,如按下确定按钮,选择某个单选按钮或者复选框。每一种控件有自己可以识别的事件,如窗体的加载、单击、双击等事件,编辑框(文本框)的文本改变事,等等。事件有系统事件和用户事件。系统事件由系统激发,如时间每隔24小时,银行储户的存款日期增加一天。用户事件由用户激发,如用户点击按钮,在文本框中显示特定的文本。事件驱动控件执行某项功能。

事件由事件源所激发。向事件源注册的事件侦听器可接收有关特定事件类型的通知

‘拾’ java 事件处理的几种写法

public class HandleEventextends JFrame{ //HandleEvent 继承JFrame
public HandleEvent(){
add(panel); //JFrame中包含panel ,panel中包含jbtOK
OKListenerClasslistener1 = new OKListenerClass(); //实例化监听器listener1
CanelListenerClasslistener2 = new CanelListenerClass();
jbtOK.addActionListener(listener1); //在jbtOK中添加监听器listener1
jbtCancel.addActionListener(listener2);
}
class OKListenerClass implementsActionListener{ //OKListenerClass 实例ActionListener
public voidactionPerformed(ActionEvent e){
System.out.println("OK buttonclicked");
}
}
class CanelListenerClassimplements ActionListener{
public voidactionPerformed(ActionEvent e){
System.out.println("Canel buttonclicked");
}
}

热点内容
安卓手机中的投影在哪里 发布:2025-02-05 08:01:57 浏览:594
php调用定义函数 发布:2025-02-05 08:00:30 浏览:451
ubuntujava环境变量 发布:2025-02-05 07:57:13 浏览:442
sql语句on 发布:2025-02-05 07:41:42 浏览:597
取消电脑密码怎么设置8 发布:2025-02-05 07:24:16 浏览:393
洗脑编程 发布:2025-02-05 07:23:52 浏览:948
osd加密 发布:2025-02-05 07:17:39 浏览:36
微信游戏源码下载 发布:2025-02-05 07:17:29 浏览:384
计算机内存储器是 发布:2025-02-05 07:13:35 浏览:144
classpathlinux 发布:2025-02-05 07:12:57 浏览:564