• 事件模型ActionEvent


    一.概念认知


    二.代码示例

    package com.awt;
    
    import java.awt.*;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    
    /*
     * 事件模型
     */
    public class TestActionEvent {
        public static void main(String[] args) {
            Frame f = new Frame("0202陪考党");
            Button b = new Button("press Me!");
            Monitor bh = new Monitor();
            //添加指定的动作侦听器以从此按钮接收动作事件。
    b.addActionListener(bh);
            f.setLocation(300,300);
            f.add(b,BorderLayout.CENTER);
            f.pack();
            f.setVisible(true);
        }
    }
    /*
     * public interface ActionListener extends EventListener
     * 用于接收动作事件的侦听器界面。
     */
    class Monitor implements ActionListener{//实现接口
        @Override
        /*
         * actionPerformed(non-Javadoc)
         * void actionPerformed(ActionEvent e)发生动作时调用。 
         */
        public void actionPerformed(ActionEvent e) {
            System.out.println("a button has been pressed");
        }
    }

    程序分析:结合上图来看,在①处b按钮事件源对象上调用

    addActionListener()方法传进了bn对象,即动作监听器

    ②处类名是Monitor,其实类名是什么不重要,重要的是在③处实现了ActionEvent接口;

    那么当按钮点击了后,在监听器bn中传送了某种事件对象,事件对象中封装了事件的具体信息(这里是点击信息),Monitor侦听界面接收到了点击动作事件之后,调用ActionPerformed方法,执行某种处理(打印处理)

    有点抽象,结合图和我的注释理解

  • 相关阅读:
    通用二进制格式安装、编译安装过程(以mysql为例)
    linux:网络
    深圳:软通-运维
    深圳:软通-python
    linux:用户管理
    linux:vim
    深圳:卡莱特-售前/售后服务
    linux:基本指令
    linux:安装
    电脑:磁盘扩容
  • 原文地址:https://www.cnblogs.com/zjm1999/p/10282549.html
Copyright © 2020-2023  润新知