[置顶] java Gui 键盘监听事件
简单写一个java Gui键盘监听事件,实现的效果就是按下键盘控制台输出你按下的键。比如:按下A控制台就输出A
效果如图:
以下把实现的效果分为几个步骤:
1.新建一个窗体类继承窗体;
2.给这个窗体添加addKeyListener(new MyKeyListener()),方法里面实例化监听键盘类;
3.新建一个键盘类继承KeyAdapter;
4.类里面的方法名必须是keyPressed(KeyEvent e);//KeyEvent就是jre对你按下/释放键盘按键的包装
5.实例化窗体类。
下面贴出上图实现的代码:
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent; import javax.swing.JFrame; /**
*
*/ /**
* @author Administrator
*
*/
//窗体类
public class MyFrame extends JFrame { /**
* @param args
*/
char charA;
public MyFrame(){
this.setSize(500,100);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setTitle("my jframe");
this.setVisible(true);
this.addKeyListener(new MyKeyListener()); } public static void main(String[] args) {
// TODO Auto-generated method stub
new MyFrame();
} }
//监听键盘类
class MyKeyListener extends KeyAdapter{
public void keyPressed(KeyEvent e){
char charA=e.getKeyChar();
System.out.println("你按了《"+charA+"》键");
}
}
另外一种写法就是在给窗体添加监听的时候直接 实例方法,不用再写一个类。建议用这个写法。代码如下:
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent; import javax.swing.JFrame; /**
*
*/ /**
* @author Administrator
*
*/
//窗体类
public class MyFrame extends JFrame { /**
* @param args
*/
char charA;
public MyFrame(){
this.setSize(500,100);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setTitle("my jframe");
this.setVisible(true);
this.addKeyListener(new KeyAdapter(){
public void keyPressed(KeyEvent e){
char charA=e.getKeyChar();
System.out.println("你按了《"+charA+"》键");
}
}); }
public static void main(String[] args) {
// TODO Auto-generated method stub
new MyFrame();
} }
[置顶] java Gui 键盘监听事件的更多相关文章
- js 获取当前焦点所在的元素、给元素和input控件添加键盘监听事件、添加页面级的键盘监听事件
页面级的键盘监听事件 document.onkeydown = function (event) { var e = event || window.event || arguments.callee ...
- JPanel添加键盘监听事件
因为在自己的游戏需求中谢了要用键盘控制飞机的移动,所以用到键盘监听事件,但是使用了JPanel之后添加了键盘监听事件,按相应的方向键飞机并没有反应.但是如果是为JFrame的内容面板加则会有反应. 为 ...
- JAVA JComboBox的监听事件(ActionListener、ItemListener)
版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[+] 参考资料: http://263229365.iteye.com/blog/1040329 https://www.ja ...
- java中的监听事件
java监听器实现的类 1.ServletContextListener:对servlet上下文的创建和销毁监听 2.ServletContextAttributeListener:监听servlet ...
- GUI常用监听事件
概念 对鼠标.键盘等一系列事件做出相应的反馈 事件监听 //创建监听事件 public class Demo { public static void main(String[] args) { Fr ...
- iOS键盘监听事件
1.注册键盘通知事件 NSNotificationCenter *center = [NSNotificationCenter defaultCenter]; // 键盘将出现事件监听 [center ...
- Android 软键盘监听事件
Android软键盘的隐藏显示研究 Android是一个针对触摸屏专门设计的操作系统,当点击编辑框,系统自动为用户弹出软键盘,以便用户进行输入. 那么,弹出软键盘后必然会造成原有布局高度的减少 ...
- Cocos Creator 键盘监听事件
键盘事件键盘.设备重力传感器此类全局事件是通过函数 cc.systemEvent.on(type, callback, target) 注册的.cc.SystemEvent.EventType.KEY ...
- 键盘监听事件KeyListener
说明:按下实体按键,相应虚拟按键变绿色,释放按键,变白色. public class Demo extends JFrame { private List<JButton> list; ...
随机推荐
- python字符串方法以及注释
转自fishC论坛:http://bbs.fishc.com/forum.php?mod=viewthread&tid=38992&extra=page%3D1%26filter%3D ...
- JS,Jquery - 三元运算符
在javascript中使用三元运算符. 要使用 " [] " ,对运算式进行包裹.
- 【Web】HttpServletRequest request 相关方法 得到路径
username=qqqq password=wwww //----------------------POST-------------------> http://192.168.1.211 ...
- 轻量级数据sqlite的C++调用示例
原文地址:http://www.cnblogs.com/kfqcome/archive/2011/06/27/2136999.html #include "stdafx.h" #i ...
- iOS Development: Proper Use of initWithNibName:bundle: Affects UITableViewController
Address:http://www.outofcore.com/2011/07/ios-development-proper-use-of-initwithnibnamebundle-affects ...
- hdu1853解题报告
题意和解决回路匹配的思路如同hdu3488 (这里我第一次想到最短路,但是对于有回路这个不知道怎么处理,后来看了别人的解题报告才知道KM匹配,但是看到KM之后就自己想...想了很久....还是不知道回 ...
- Can't connect to MySQL server on 'XXX' (13)
出现can't connect to MySQL server using '' (13)的错误,结果是 SELinux 不让 httpd 访问外网,一开始还以为是iptables造成的,关闭之后发现 ...
- Android 如何引用com.android.internal.R目录下的资源
Android 如何引用com.android.internal.R目录下的资源 项目需求 有一个资源跟系统上的一个资源相同,想要引用它:frameworks/base/core/res/res/dr ...
- Bootstrap技术: 如何给nav导航组件的tab页增加关闭按钮以及动态的添加和关闭tab页
先给出示例html代码 <div> <!-- Nav tabs --> <ul class="nav nav-tabs" role="tab ...
- Ext的异步请求(二级级联动态加载下拉列表)
页面: <tr> <td class="label" width="300" >作业计划项模板</td> <td> ...