键盘 事件处理 -Java学习笔记(37)
来源:互联网 发布:528雾化器绕丝数据 编辑:程序博客网 时间:2024/06/15 09:00
处理键盘时间要实现KeyListener接口(为了简便,通常继承类KeyAdapter)的方法。如击键事件重写方法keyPressed,松开键keyReleased,敲字符keyTyped。
我们可以用KeyEvent.getKeyCode()来判断按下的是哪个键。KeyCode的定义在KeyEvent中的静态域(Field)里。
下面一个示例程序,按键盘上的上下左右箭头键控制实心圆的位置。
import java.awt.*;
import java.awt.event.*;
/** *//**
* Moving the blue point in the window use four keys of arrow.
* @author nyzhl
*/
public class KeyEventTest ...{
public static void main (String[] args) ...{
new MyFrame();
}
}
class MyFrame extends Frame ...{
//Position of the blue point.
int x = 190;
int y = 250;
public MyFrame() ...{
super("KeyEventTest");
setBounds(200,200,400,300);
//Key event handler.
addKeyListener(new KeyAdapter() ...{
public void keyPressed(KeyEvent e) ...{
switch (e.getKeyCode()) ...{
case KeyEvent.VK_RIGHT : ++x;
break;
case KeyEvent.VK_LEFT : --x;
break;
case KeyEvent.VK_UP : --y;
break;
case KeyEvent.VK_DOWN : ++y;
break;
}
repaint();
}
});
setVisible(true);
}
//paint the blue point.
public void paint (Graphics g) ...{
Color c = g.getColor();
g.setColor(Color.blue);
g.fillOval(x,y,20,20);
g.setColor(c);
}
}
import java.awt.event.*;
/** *//**
* Moving the blue point in the window use four keys of arrow.
* @author nyzhl
*/
public class KeyEventTest ...{
public static void main (String[] args) ...{
new MyFrame();
}
}
class MyFrame extends Frame ...{
//Position of the blue point.
int x = 190;
int y = 250;
public MyFrame() ...{
super("KeyEventTest");
setBounds(200,200,400,300);
//Key event handler.
addKeyListener(new KeyAdapter() ...{
public void keyPressed(KeyEvent e) ...{
switch (e.getKeyCode()) ...{
case KeyEvent.VK_RIGHT : ++x;
break;
case KeyEvent.VK_LEFT : --x;
break;
case KeyEvent.VK_UP : --y;
break;
case KeyEvent.VK_DOWN : ++y;
break;
}
repaint();
}
});
setVisible(true);
}
//paint the blue point.
public void paint (Graphics g) ...{
Color c = g.getColor();
g.setColor(Color.blue);
g.fillOval(x,y,20,20);
g.setColor(c);
}
}
- 键盘 事件处理 -Java学习笔记(37)
- 学习SWT的笔记 --键盘事件处理
- OSG学习笔记9-处理键盘事件
- JAVA键盘事件处理
- Java学习笔记(6):事件处理
- Java事件处理学习笔记
- C#学习笔记(8)鼠标键盘事件处理
- Flex 监听键盘事件(学习笔记)
- java 键盘事件处理案例
- java键盘事件处理程序
- 鼠标/键盘事件 学习笔记
- 《JavaScript学习笔记》:键盘事件
- 窗口关闭 事件处理 -Java学习笔记(36)
- Java学习笔记(AWT 之 事件处理机制)
- Java学习笔记-------事件处理机制
- Java学习笔记--------Java的事件和事件处理接口
- Java Swing中的键盘事件处理
- Java Swing中的键盘事件处理
- 硬盘的文件格式变为RAW格式
- XML Serialization of Java Objects
- profile学习
- Netbean_web
- java - 从追MM谈Java的23种设计模式
- 键盘 事件处理 -Java学习笔记(37)
- 6月飞雪
- JavaScript就这么回事
- 无耻的窃取Linux源码
- 给CSDN BLOG提两个建议
- 事件基础
- 瞎子 阿炳 喜欢其音乐
- 在NetBeans中使用MySQL创建简单Web应用程序(一) (http://blog.csdn.net/java060515/archive/2007/06/19/1658316.aspx)
- C#引用类型(1)