Java(91) 
  1. /**
  2. * java swing中事件调用的两种机制:
  3. * (一)响应机制
  4. * (二)回调机制
  5. */
  6. package test;
  7. import java.awt.*;
  8. import java.awt.event.*;
  9. import javax.swing.*;
  10. class SimpleListener implements ActionListener {
  11. /*
  12. * 利用该类来监听事件源产生的事件,利用响应机制
  13. */
  14. public void actionPerformed(ActionEvent e) {
  15. String buttonName = e.getActionCommand();
  16. if (buttonName.equals("按钮1"))
  17. System.out.println("按钮1 被点击");
  18. }
  19. }
  20. /*
  21. * 利用该类来处理事件源产生的事件,利用回调机制
  22. */
  23. class ButtonAction extends AbstractAction {
  24. public void actionPerformed(ActionEvent e) {
  25. System.out.println("按钮2 被点击");
  26. }
  27. }
  28. public class ActionTest {
  29. private static JFrame frame; // 定义为静态变量以便main使用
  30. private static JPanel myPanel; // 该面板用来放置按钮组件
  31. private JButton button1; // 这里定义按钮组件
  32. private JButton button2;
  33. public ActionTest() { // 构造器, 建立图形界面
  34. // 新建面板
  35. myPanel = new JPanel();
  36. // 新建按钮
  37. button1 = new JButton("按钮1"); // 新建按钮1
  38. // 建立一个actionlistener让按钮1注册,以便响应事件
  39. SimpleListener ourListener = new SimpleListener();
  40. button1.addActionListener(ourListener);
  41. button2 = new JButton();// 新建按钮2
  42. // 建立一个ButtonAction注入按钮2,以便响应事件
  43. ButtonAction action = new ButtonAction();
  44. button2.setAction(action);
  45. button2.setText("按钮2");
  46. myPanel.add(button1); // 添加按钮到面板
  47. myPanel.add(button2);
  48. }
  49. public static void main(String s[]) {
  50. ActionTest gui = new ActionTest(); // 新建Simple1组件
  51. frame = new JFrame("Simple1"); // 新建JFrame
  52. // 处理关闭事件的通常方法
  53. frame.addWindowListener(new WindowAdapter() {
  54. public void windowClosing(WindowEvent e) {
  55. System.exit(0);
  56. }
  57. });
  58. frame.getContentPane().add(myPanel);
  59. frame.pack();
  60. frame.setVisible(true);
  61. }
  62. }
 
1

java SWing事件调用的两种机制的更多相关文章

  1. JAVA客户端API调用memcached两种方式

    1. memcached client for java客户端API:memcached client for java 引入jar包:java-memcached-2.6.2.jar package ...

  2. phpcms调取数据库的两种机制

    在phpcms中,模板调取后台的数据有两种机制: 1.在控制器中定义数据,在模板中直接调用. 2.标签机制.即在模块的classes/tag.class中定义标签类,然后在模板中用标签调用 两种调用机 ...

  3. 关于JAVA中事件分发和监听机制实现的代码实例-绝对原创实用

    http://blog.csdn.net/5iasp/article/details/37054171 文章标题:关于JAVA中事件分发和监听机制实现的代码实例 文章地址: http://blog.c ...

  4. java中数组复制的两种方式

    在java中数组复制有两种方式: 一:System.arraycopy(原数组,开始copy的下标,存放copy内容的数组,开始存放的下标,需要copy的长度); 这个方法需要先创建一个空的存放cop ...

  5. 巨蟒python全栈开发数据库前端6:事件onclick的两种绑定方式&&onblur和onfocus事件&&window.onload解释&&小米商城讲解

    1.回顾上节内容(JavaScript) 一.JavaScript概述 1.ECMAScript和JavaScript的关系 2.ECMAScript的历史 3.JavaScript是一门前后端都可以 ...

  6. Kubernetes 健康检查的两种机制:Liveness 探测和 Readiness 探测

    Kubernetes 健康检查的两种机制:Liveness 探测和 Readiness 探测,并实践了健康检查在 Scale Up 和 Rolling Update 场景中的应用.kubelet使用启 ...

  7. Java中HashMap遍历的两种方式

    Java中HashMap遍历的两种方式 转]Java中HashMap遍历的两种方式原文地址: http://www.javaweb.cc/language/java/032291.shtml 第一种: ...

  8. java动态获取WebService的两种方式(复杂参数类型)

    java动态获取WebService的两种方式(复杂参数类型) 第一种: @Override public OrderSearchListRes searchOrderList(Order_Fligh ...

  9. Java使用SFTP和FTP两种连接方式实现对服务器的上传下载 【我改】

    []如何区分是需要使用SFTP还是FTP? []我觉得: 1.看是否已知私钥. SFTP 和 FTP 最主要的区别就是 SFTP 有私钥,也就是在创建连接对象时,SFTP 除了用户名和密码外还需要知道 ...

随机推荐

  1. 00HyperText Markup Language

    HyperText Markup Language HTML超文本标记语言是一种用于创建网页的标准标记语言用于显示网页内容,HTML运行在浏览器上,由浏览器来解析,您可以使用 HTML 来建立自己的 ...

  2. 17Oracle Database 维护

    Oracle Database 维护 备份 还原

  3. Unity中播放带有alpha通道格式为Mp4的视频

    问题: Unity中实现播放透明的MP4视频时出现黑点 解决办法:    使用Unity自带的shader去除黑点 1:shader代码如下所示 Shader "Unlit/NewUnlit ...

  4. reversed()函数和sorted()函数

    #reversed()反转排序,可对列表.元组.区间等进行排序 #练习1 a = range(10) a_list = [x for x in reversed(a)] print(a_list) # ...

  5. Linux未来监控tracing框架——eBPF

    Linux未来监控tracing框架--eBPF eBPF源于早年间的成型于 BSD 之上的传统技术 BPF(Berkeley Packet Filter).BPF 的全称是 Berkeley Pac ...

  6. (1) GoJS入门

    GoJS的官方下载,若下载失败,可尝试通过我的个人网盘分享下载. GoJS是一款功能强大,快速且轻量级的流程图控件,可帮助你在JavaScript 和HTML5 Canvas程序中创建流程图,且极大地 ...

  7. 数组array的常用方法简介

    数组方法简介 数组总共有22种方法,本文将其分为以下几类来进行详细介绍. 原数组变化:push() pop() shift() unshift() reverse() sort() splice() ...

  8. 数据结构---二叉搜索树BST实现

    1. 二叉查找树 二叉查找树(Binary Search Tree),也称为二叉搜索树.有序二叉树(ordered binary tree)或排序二叉树(sorted binary tree),是指一 ...

  9. Nginx + Lets'encrypt 实现HTTPS访问七牛空间资源

    上一篇文章 为七牛云存储空间绑定自定义域名,并使用七牛云提供的免费SSL证书,将自定义加名升级为HTTPS 我们提到利用七牛的免费SSL证书,将自定义加名升级为HTTPS的方法. 不知道有没有小伙伴会 ...

  10. PAT 1125 Chain the Ropes

    Given some segments of rope, you are supposed to chain them into one rope. Each time you may only fo ...