用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字
云代码 - java代码库

键盘事件监听简单例子

2016-11-01 作者:梅西小王子举报

[java]代码库

/**
 * 功能:键盘事件监听简单例子
 * 1.在面板上画一个小球,让它能通过键盘上下左右的动
 */
package com.zjr;
import java.awt.*;

import javax.swing.*;

import java.awt.event.*;

public class Test1 extends JFrame{

	MyPanel mp=null;
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Test1 test1=new Test1();

	}

	public  Test1(){
		
		mp=new MyPanel();
		
		this.add(mp);
		
		this.addKeyListener(mp);
		
		this.setSize(400, 300);
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		this.setVisible(true);
	}
	
}

class MyPanel extends JPanel implements KeyListener
{
	int x=10;
	int y=10;
	//重写paint方法
	public void paint(Graphics g){
		
		super.paint(g);
		
		g.fillOval(x, y, 12, 12);
		//g.drawRect(50, 50, 10,5);
		
	}

	@Override
	public void keyTyped(KeyEvent e) {
		// TODO Auto-generated method stub
		//System.out.println("被按下的是"+e.getKeyChar());
		 
		
		
	}

	@Override
	public void keyPressed(KeyEvent e) {
		// TODO Auto-generated method stub
		if(e.getKeyCode()==KeyEvent.VK_UP){
			y-=10;
			
		}else if(e.getKeyCode()==KeyEvent.VK_DOWN){
			y+=10;
		}else if(e.getKeyCode()==KeyEvent.VK_LEFT){
			
			x-=10;
		}else if(e.getKeyCode()==KeyEvent.VK_RIGHT){
			
			x+=10;
		}
		this.repaint();
		
	}

	@Override
	public void keyReleased(KeyEvent e) {
		// TODO Auto-generated method stub
		
	}
	
}


分享到:
更多

网友评论    (发表评论)


发表评论:

评论须知:

  • 1、评论每次加2分,每天上限为30;
  • 2、请文明用语,共同创建干净的技术交流环境;
  • 3、若被发现提交非法信息,评论将会被删除,并且给予扣分处理,严重者给予封号处理;
  • 4、请勿发布广告信息或其他无关评论,否则将会删除评论并扣分,严重者给予封号处理。