事件监听机制

事件处理机制:

相关概念:一共有三类对象,Event Source(事件源)Event(事件)EventListener(事件监听器)

Event Source(事件源):事件发生的场所,通常是各个组件,例如按钮,窗口,菜单等。

Event(事件):封装了GUI组件上发生的特定事情(通常就是一次用户操作)。如果程序需要获得GUI组件上所发生事件的相关信息,都可以通过Event对象来取得。

EventListener(事件监听器):负责监听事件源所发生的事件,并对各种事件作出响应处理。

AWT的事件处理机制是一种委派式事件处理方式——普通组件(事件源)将事件的处理工作委托给特定的对象(事件监听器),当该事件源发生指定的事件时,就通知所委托的事件监听器,由事件监听器来处理这个事件。

 事件监听机制_第1张图片

 

 

实现AWT事件处理机制的步骤有:

1.实现事件监听类,该监听类是一个特殊的Java类,必须实现一个XxxListener接口。

2.创建普通组件(事件源),创建事件监听对象。

3.调用addXxxListener()方法将事件监听器对象注册给普通组件(事件源)。当事件源上发生指定事件时,AWT会触发事件监听器,由事件监听器调用响应的方法(事件处理器)来处理,事件源上所发生的事件会作为参数传入事件处理器。

Case 1: 

public class EventQs 

{

private Frame f = new Frame("测试事件");

private Button ok = new Button("确定");

private TextField tf = new TextField(30);

    //事件注册 以及初始化界面

public void init(){

       ok.addActionListener(new OkListener());

   f.add(tf);

   f.add(ok,BorderLayout.SOUTH);

   f.pack();

   f.setVisible(true);

}

//定义事件监听器类 实现事件接口

class OkListener implements ActionListener

{

       public void actionPerformed(ActionEvent e){

       System.out.println("用户点击了OK按钮");

   tf.setText("Hello World");

   }

}

public static void main(String[] args){

        new EventQs().init();

}

}

你可能感兴趣的:(数据结构)