博客
关于我
Swing中的事件
阅读量:754 次
发布时间:2019-03-22

本文共 1151 字,大约阅读时间需要 3 分钟。

在Java中,事件处理机制被分为“事件源”、“事件”、“监听器”这三部分,每一部分负责一个任务,完整地结合在一起就构成了Java事件的基本框架。

事件是一种很好的让界面和用户进行交互的手段。

当用户和界面交互时,经常会进行一些操作,例如单击按钮,按下指定键盘键,都会触发事件。

事件触发后会告诉程序发生的事件,程序会根据不同的事件做出反应。在事件的发生和响应的过程中需要两个对象,事件源和事件监听器。

1)事件源就是触发事件的控件,这里包括按钮、文本框、窗体等多种控件。但是不同的控件存在不同的事件,事件信息被封装在事件对象中。

2)事件监听器是指实现专门的监听接口的类的对象。每个事件都有对应的监听接口,同时在该接口中给出了处理事件的方法。在编写监听器时需要事件监听接口,

同时实现其中的方法,在方法中编写触发事件后执行的程序。在编写程序时,还需要将监听器注册给事件源,这样才能执行事件。

3)事件源与监听器之间是多对多的关系,一个事件源可以对应多个监听器,一个监听器可以为多个事件源服务。

package com.whut.sw;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.*;

public class Swing12 extends JFrame{

 JButton jb = new JButton();
 int i=0;
 //定义构造器
 public Swing12(){
  this.setTitle("创建按钮");
  jb.setText("按钮按下了0次");
  jb.setMnemonic('a'); //设置按钮的助记符
  this.add(jb);
  //为按钮注册监听器
  jb.addActionListener(new ActionListener() {   
   
   public void actionPerformed(ActionEvent e) {
    Swing12.this.jb.setText("按钮按下了"+(++i)+"次");
    
   }
  });
  
  this.setBounds(300, 260, 300, 200);
  this.setVisible(true);
  
 }
 public static void main(String[] args) {
  Swing12 s = new Swing12();

 }

}

-----------------------------------------------------------------------------------------------------------

结果如下:

你可能感兴趣的文章
Node-RED中建立Websocket客户端连接
查看>>
Node-RED中建立静态网页和动态网页内容
查看>>
Node-RED中解析高德地图天气api的json数据显示天气仪表盘
查看>>
Node-RED中连接Mysql数据库并实现增删改查的操作
查看>>
Node-RED中通过node-red-ui-webcam节点实现访问摄像头并截取照片预览
查看>>
Node-RED中配置周期性执行、指定时间阶段执行、指定时间执行事件
查看>>
Node-RED安装图形化节点dashboard实现订阅mqtt主题并在仪表盘中显示温度
查看>>
Node-RED怎样导出导入流程为json文件
查看>>
Node-RED订阅MQTT主题并调试数据
查看>>
Node-RED通过npm安装的方式对应卸载
查看>>
node-request模块
查看>>
node-static 任意文件读取漏洞复现(CVE-2023-26111)
查看>>
Node.js 8 中的 util.promisify的详解
查看>>
node.js debug在webstrom工具
查看>>
Node.js HTTP模块详解:创建服务器、响应请求与客户端请求
查看>>
Node.js RESTful API如何使用?
查看>>
node.js url模块
查看>>
Node.js Web 模块的各种用法和常见场景
查看>>
Node.js 之 log4js 完全讲解
查看>>
Node.js 函数是什么样的?
查看>>