首页 > 代码库 > java 事件监听 - 键盘
java 事件监听 - 键盘
java 事件监听 - 键盘
//事件监听//键盘事件监听,写了一个小案例,按上下左右,改变圆形的位置,圆形可以移动import java.awt.*;import javax.swing.*;import java.awt.event.*;public class Index extends JFrame{ //设置面板 Wdmb wdmb = new Wdmb(); public static void main(String[] args) throws Exception{ //实例化当前类 Index index = new Index(); } //自动执行 public Index(){ this.add(wdmb); //添加键盘监听事件 this.addKeyListener(wdmb); this.setSize(500,500); this.setLocation(300,200); this.setTitle("绘图"); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setVisible(true); } }//面板方法class Wdmb extends JPanel implements KeyListener{ int x = 50; int y = 50; //方法覆盖 //JPanel自带方法,下面格式是固定的 //paint 会在三种情况下自动被调用 //1、启动程序 2、窗口大小发生变化时 3、运行repaint函数时 public void paint(Graphics g){ //覆盖父类的方法 super.paint(g); g.setColor(Color.red); g.fillOval(x, y, 50, 50); } public void keyTyped(KeyEvent e){ //有字符输出函数 System.out.println("按下了能输入内容的按键"); } public void keyPressed(KeyEvent e){ //全部按键,响应 System.out.println("键盘被按下,数字为:"+e.getKeyCode()+",按键是:"+(char)e.getKeyCode()); //方向键,上下左右 if(e.getKeyCode()==38){ //上 y-=10; } else if(e.getKeyCode()==40){ //下 y+=10; } else if(e.getKeyCode()==37){ //左 x-=10; } else if(e.getKeyCode()==39){ //右 x+=10; } //重新调用界面 this.repaint(); } public void keyReleased(KeyEvent e){ //按键抬起 } }
java 事件监听 - 键盘
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。