Java图形化编程中的键盘事件设计简介

 更新时间:2015年10月08日 16:18:30   投稿:goldensun  
这篇文章主要介绍了Java图形化编程中的键盘事件设计,是Java的GUI编程当中的基础部分,需要的朋友可以参考下

键盘事件的事件源一般丐组件相关,当一个组件处于激活状态时,按下、释放或敲击键盘上的某个键时就会发生键盘事件。键盘事件的接口是KeyListener,注册键盘事件监视器的方法是addKeyListener(监视器)。实现KeyListener接口有3个:

  1. keyPressed(KeyEvent e):键盘上某个键被按下;
  2. keyReleased(KeyEvent e):键盘上某个键被按下,又释放;
  3. keyTyped(KeyEvent e):keyPressed和keyReleased两个方法的组合。

管理键盘事件的类是KeyEvent,该类提供方法:
public int getKeyCode(),获得按动的键码,键码表在KeyEvent类中定义。

【例】小应用程序有一个按钮和一个文本区,按钮作为发生键盘事件的事件源,并对它实施监视。程序运行时,先点击按钮,让按钮激活。以后输入英文字母时,在正文区显示输入的字母。字母显示时,字母之间用空格符分隔,且满10个字母时,换行显示。

import java.applet.*
import java.awt.*;
import java.awt.event.*;
public class Example6_10 extends Applet implements KeyListener{
  int count =0;
  Button button = new Button();
  TextArea text = new TextArea(5,20);
  public void init(){
    button.addKeyListener(this);
    add(button);add(text);
  }
  public void keyPressed(KeyEvent e){
    int t = e.getKeyCode();
    if(t>=KeyEvent.VK_A&&t<=KeyEvent.VK_Z){
      text.append((char)t+" ");
      count++;
      if(count%10==0)
        text.append("\n");
    }
  }
  public void keyTyped(KeyEvent e){}
  public void keyReleased(KeyEvent e){}
}

相关文章

  • 浅谈Java线程Thread之interrupt中断解析

    浅谈Java线程Thread之interrupt中断解析

    这篇文章主要介绍了Java线程Thread之interrupt中断解析,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-01-01
  • Java框架Quartz中API、Jobs和Trigger详解

    Java框架Quartz中API、Jobs和Trigger详解

    这篇文章主要介绍了Java框架Quartz中API、Jobs和Trigger详解,JobDetail 对象是在将 job 加入 scheduler 时,由客户端程序(你的程序)创建的,它包含 job 的各种属性设置,以及用于存储 job 实例状态信息的 JobDataMap,需要的朋友可以参考下
    2023-11-11
  • SpringBoot配置绑定方法详解

    SpringBoot配置绑定方法详解

    配置绑定是SpringBoot其中一个底层功能,SpringBoot把配置绑定的过程变得更加简单,传统java将常用的配置放到配置文件properties中,之后将这些配置绑定到javabean中
    2022-10-10
  • IDEA中的clean,清除项目缓存图文教程

    IDEA中的clean,清除项目缓存图文教程

    这篇文章主要介绍了IDEA中的clean,清除项目缓存图文教程,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-09-09
  • SpringCloud基于RestTemplate微服务项目案例解析

    SpringCloud基于RestTemplate微服务项目案例解析

    这篇文章主要介绍了SpringCloud基于RestTemplate微服务项目案例,在写SpringCloud搭建微服务之前,先搭建一个不通过springcloud只通过SpringBoot和Mybatis进行模块之间通讯,通过一个案例给大家详细说明,需要的朋友可以参考下
    2022-05-05
  • Java日常练习题,每天进步一点点(57)

    Java日常练习题,每天进步一点点(57)

    下面小编就为大家带来一篇Java基础的几道练习题(分享)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望可以帮到你
    2021-08-08
  • java遍历http请求request的所有参数实现方法

    java遍历http请求request的所有参数实现方法

    下面小编就为大家带来一篇java遍历http请求request的所有参数实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-09-09
  • 如何在MyBatis中实现DataSource

    如何在MyBatis中实现DataSource

    今天给大家整理了如何在MyBatis中实现DataSource,文中有非常详细的代码示例,对正在学习java的小伙伴们很有帮助,需要的朋友可以参考下
    2021-06-06
  • Java数据结构之树和二叉树的相关资料

    Java数据结构之树和二叉树的相关资料

    这篇文章主要介绍了Java 数据结构之树和二叉树相关资料,文中通过示例代码和一些相关题目来做介绍,非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下!
    2023-01-01
  • Spring Boot Web应用开发 CORS 跨域请求支持

    Spring Boot Web应用开发 CORS 跨域请求支持

    本篇文章主要介绍了Spring Boot Web应用开发 CORS 跨域请求支持,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-05-05

最新评论