码迷,mamicode.com
首页 > 编程语言 > 详细

【JAVA语言程序设计基础篇】--事件驱动程序设计--键盘事件

时间:2016-08-17 23:10:57      阅读:230      评论:0      收藏:0      [点我收藏+]

标签:

  1. package chapter16;  
  2.   
  3. import java.awt.Font;  
  4. import java.awt.Graphics;  
  5. import java.awt.event.KeyAdapter;  
  6. import java.awt.event.KeyEvent;  
  7.   
  8. import javax.swing.JFrame;  
  9. import javax.swing.JPanel;  
  10.   
  11.   
  12.   
  13. @SuppressWarnings("serial")  
  14. public class KeyEventDemo extends JFrame{  
  15.       
  16.     aa one  = new aa();  
  17.     public KeyEventDemo (){  
  18.         add(one);  
  19.         one.setFocusable(true);  
  20.     }  
  21.   
  22.     public static void main(String[] args) {  
  23.         KeyEventDemo frame = new KeyEventDemo();  
  24.         frame.setTitle("KeyEventDemo");  
  25.         frame.setLocationRelativeTo(null); // Center the frame  
  26.         frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  
  27.         frame.setSize(300300);  
  28.         frame.setVisible(true);  
  29.     }  
  30.     static class aa extends JPanel{  
  31.         private int x = 50;  
  32.         private int y = 50;  
  33.         private char keychar = ‘A‘;  
  34.           
  35.         public aa(){  
  36.             addKeyListener(new KeyAdapter() {  
  37.                  public void keyPressed(KeyEvent e) {  
  38.                       switch (e.getKeyCode()) {  
  39.                         case KeyEvent.VK_DOWN: y += 10break;  
  40.                         case KeyEvent.VK_UP: y -= 10break;  
  41.                         case KeyEvent.VK_LEFT: x -= 10break;  
  42.                         case KeyEvent.VK_RIGHT: x += 10break;  
  43.                         default: keychar = e.getKeyChar();  
  44.                       }  
  45.                       repaint();  
  46.                  }  
  47.             });  
  48.         }  
  49.         protected void paintComponent(Graphics g){  
  50.             super.paintComponent(g);  
  51.               
  52.             g.setFont(new Font("TimesRoman",Font.PLAIN,24));  
  53.             g.drawString(String.valueOf(keychar), x, y);  
  54.               
  55.         }  
  56.     }  
  57. }  




点击键盘上的字母,输出在屏幕上,如果不是字母,不显示

另外 按方向键,可以控制字母的左右上下方向移动

技术分享技术分享

【JAVA语言程序设计基础篇】--事件驱动程序设计--键盘事件

标签:

原文地址:http://blog.csdn.net/qq_24653023/article/details/52235202

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!