博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java读取键盘方向键_我想实现当按下键盘的方向键,所画的红点会随着移动,请帮忙看下下...
阅读量:5106 次
发布时间:2019-06-13

本文共 1200 字,大约阅读时间需要 4 分钟。

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

public class GUI {

public static void main(String[] args) {

GameFrame myFrame=new GameFrame();

myFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

myFrame.setVisible(true);

}

}

class GameFrame extends JFrame{

public static final int WIDTH=500;

public static final int HEIGHT=300;

public GameFrame(){

setSize(WIDTH,HEIGHT);

setResizable(false);

Container contentPane=getContentPane();

GamePanel myPanel=new GamePanel();

contentPane.add(myPanel);

}

}

class GamePanel extends JPanel{

int x=50,y=50;

public static final int XSPEED=5;

public static final int YSPEED=5;

public GamePanel(){

addKeyListener(new KeyMonitor());

}

public void paintComponent(Graphics g){

super.paintComponent(g);

Color c=g.getColor();

g.setColor(Color.RED);

g.fillOval(x,y,20,20);

g.setColor(c);

}

public class KeyMonitor extends KeyAdapter{

public void keyPressed(KeyEvent e){

int key=e.getKeyCode();

switch(key){

case KeyEvent.VK_LEFT:

x-=XSPEED;

break;

case KeyEvent.VK_RIGHT:

x+=XSPEED;

break;

case KeyEvent.VK_UP:

y-=YSPEED;

break;

case KeyEvent.VK_DOWN:

y+=YSPEED;

break;

}

repaint();

}

public void keyReleased(KeyEvent e){

}

}

}

转载地址:http://xqudv.baihongyu.com/

你可能感兴趣的文章
Day19内容回顾
查看>>
第七次作业
查看>>
MySql update inner join!MySql跨表更新 多表update sql语句?如何将select出来的部分数据update到另一个表里面?...
查看>>
我最宏大的个人愿望
查看>>
北漂周记--第5记--拼命编程
查看>>
比赛总结一
查看>>
SpringBoot项目打包
查看>>
JSP的3种方式实现radio ,checkBox,select的默认选择值
查看>>
Linux操作系统 和 Windows操作系统 的区别
查看>>
《QQ欢乐斗地主》山寨版
查看>>
文件流的使用以及序列化和反序列化的方法使用
查看>>
Android-多线程AsyncTask
查看>>
第一个Spring冲刺周期团队进展报告
查看>>
C++函数基础知识
查看>>
红黑树 c++ 实现
查看>>
Android 获取网络链接类型
查看>>
报表服务框架:WEB前端UI
查看>>
5.9UDP客户端服务器-基于OK6410
查看>>
java自学基础、项目实战网站推荐
查看>>
软件包的使用
查看>>