按钮点击产生的效果通过事件监听来实现,下面介绍如何创建一个按钮的监听器,

一、创建监听器

1. 创建一个普通的Frame和然后添加一个按钮,参考教程

2.自制一个MyActionListener 的监听类

2.1 MyActionListener 需要实现implements接口ActionListener

public class MyActionListener implements ActionListener

2.2 重写唯一的actionPersformed(ActionEvent e)方法,
2.3 e.getActionCommand() 返回的是e 的触发事件的动作命令 (idea中ctrl+左键)来查看源码

代码如下

package GUI.事件监听;import GUI.MyClass.MySystemExit;import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;public class Test2两个按钮实现同一个监听 {public static void main(String[] args) {Frame frame = new Frame("Test2两个按钮实现同一个监听");frame.setVisible(true);Button north = new Button("north");Button south = new Button("south");//自定义触发会显示的ActionCommand 默认 为Button("...");中的值.//add listener for the south and north...north.addActionListener(new MyMonitor());south.addActionListener(new MyMonitor());//2个按钮add the same ActionListenerframe.add(north, BorderLayout.NORTH);frame.add(south, BorderLayout.SOUTH);//l,s,cframe.setLocation(100, 100);frame.setSize(400, 400);frame.setBackground(new Color(99, 255, 240));//System.exit(0);new MySystemExit(frame);}private static class MyMonitor implements ActionListener {//build the ActionLister for the north button and the south button ,named myActionListener@Overridepublic void actionPerformed(ActionEvent e) {//输入 e. 查看源码.if (e.getActionCommand() == "north") {System.out.println("north Button been clicked ,and MyMonitor class run successfully.");} else if (e.getActionCommand() == "south") {System.out.println("south Button been clicked ,and MyMonitor class run successfully.");}}}}

3.新建事件对象,将其添加到按钮中.

   MyActionListener myActionListener = new MyActionListener();north.addActionListener(myActionListener);south.addActionListener(myActionListener);

总代码, Demo.java

package GUI.事件监听;import GUI.MyClass.MyActionListener;
import GUI.MyClass.MySystemExit;import java.awt.*;/**
* 自制一个事件监听类,添加到按钮里。
*/
public class Demo {public static void main(String[] args) {Frame frame = new Frame("事件监听");Button north = new Button("north");Button south = new Button("south");//因为addActionListener(...) 需要一个 ActionListener 所以我门自己建造一个 MyActionListener//查看源码得知,public synchronized void addActionListener(ActionListener l)MyActionListener myActionListener = new MyActionListener();north.addActionListener(myActionListener);south.addActionListener(myActionListener);frame.add(north,BorderLayout.NORTH);frame.add(south,BorderLayout.SOUTH);frame.pack();//打包.pack()//color location sizeframe.setLocation(100,100);frame.setSize(400,400);frame.setBackground(new Color(99, 255, 240));//可见性.frame.setVisible(true);//add ActionListener.new MySystemExit(frame);}
}

执行窗口退出的类 MySystemExit.java

package GUI.MyClass;import java.awt.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;public class MySystemExit {public MySystemExit(Frame frame) {frame.addWindowListener(new WindowAdapter() {@Overridepublic void windowClosing(WindowEvent e) {System.out.println("System.exit(0)");System.exit(0);}});}
}

GUI效果

点击效果

Java按钮监听器ActionListener 事件监听教程.相关推荐

  1. java按钮点击事件监听_按钮事件监听

    [java]代码库/** * 功能:按钮事件监听 */ package com.test; import java.awt.*; import javax.swing.*; import java.a ...

  2. java中的actionlistener_JAVA事件监听器之BUTTON类中的ADDACTIONLISTENER(ACTIONLISTENER L)方法...

    JAVA:事件监听器之Button类中的addActionListener(ActionListener l)方法 addActionListener public void addActionLis ...

  3. 4.JAVA之GUI编程事件监听机制

    事件监听机制的特点: 1.事件源 2.事件 3.监听器 4.事件处理 事件源:就是awt包或者swing包中的那些图形用户界面组件.(如:按钮) 事件:每一个事件源都有自己特点有的对应事件和共性事件. ...

  4. java中的actionlistener_JAVA:事件监听器之Button类中的addActionListener(ActionListener l)方法...

    1 import javax.swing.*; 2 import java.awt.*; 3 import java.awt.event.*; 4 public class FrameDemo 5 { ...

  5. java中怎么esc事件监听_Javascript监听 ESC按下事件

    给页面添加一个监听ESC按下的事件,一开始以为监听函数绑定在window上就可以的.结果错了,应该绑定在document上. jQuery代码如下: ;(function ($) { $(docume ...

  6. android怎么设置按钮点击事件监听,Android点击Button按钮的四种事件监听方法总结...

    首先我们在activity_main.xml里面先定义一个Button空间 好,现在要我们来看点击事件的四种写法: 1.最常见的一种写法--匿名的内部类做为事件监听器类 package com.bas ...

  7. html页面多个按钮点击事件监听事件,HTML Button.onclick 事件汇总

    type="button" value="打开" name="Button1"> type="button" va ...

  8. Spring容器的事件监听机制(简单明了的介绍)

    文章目录 前言 事件 1. 定义事件 2. 定义监听器 3. 定义发布器 Spring容器的事件监听机制 1.事件的继承类图 监听器的继承类图 总结 前言 上一篇我们介绍了SpringFactorie ...

  9. JS事件之事件绑定与事件监听

    事件绑定   在我们对一个元素绑定了事件处理函数,并且事件触发后,我们才会得到自己想要的与网页的交互.抛开事件监听函数不谈,我们有两种绑定事件处理函数的方法:   1.通过HTML来绑定事件处理函数 ...

最新文章

  1. js 地址的封装以及地址栏的参数获取
  2. neo4j中文社区 php,neo4j 社区版搭建教程
  3. union与struct的区别?
  4. cocos2d-x初探学习笔记(13)--内存回收机制
  5. win10安装程序无法将配置为在此计算机,win10安装程序无法正常启动(完美解决)
  6. 网络信号管理大师怎么用_常说的OKR管理法,到底怎么用?
  7. oracle 最近的sql语句,oracle最近执行的sql语句
  8. ADO.NET 核心对象简介
  9. Python把函数作为参数传入的高阶编程方法
  10. MongoDB语法学习
  11. Python爬虫教程:简书文章的抓取与存储
  12. RabbitMQ学习笔记:安装环境
  13. 你知道地球上还剩多少石油吗?
  14. C语言什么是结构体?初步学习C语言结构体三部曲
  15. oracle jde优势介绍,Oracle_JDE_EnterpriseOne模块的详细功能介绍
  16. 民间借贷红线大幅下调,二手车平台去金融化将成趋势?
  17. 修改jupyter notebook的默认工作路径
  18. 如何通过网页超链接控制电脑应用程序
  19. Hexo+Icarus3+live2d给博客添加看板娘
  20. svn上文件符号的意思

热门文章

  1. 强、弱、一般、健壮等价类区别
  2. 定义视频尺寸html,使HTML5视频海报与视频本身尺寸相同
  3. 构造方法:构造方法的格式和执行时机;构造方法的作用;构造方法的注意事项;
  4. A - ASCII码排序
  5. Dava基础Day17
  6. C#与Halcon联合编程 1
  7. 【计算机视觉】:(3)全景图像拼接
  8. C语言--数据溢出导致的缓冲区(堆栈)损坏
  9. java快速排序的时间复杂度_程序猿必备排序算法及其时间复杂度分析
  10. The following packages have unmet dependencies问题解决