键盘控制小游戏简化版(功能添加更新。。)
来源:互联网 发布:克利夫兰州立大学 知乎 编辑:程序博客网 时间:2024/05/16 04:33
JAVA入门级小程序,个人感觉可以引发外行人对JAVA产生一些兴趣,如果我刚接触JAVA的时候能碰到这种程序就好了,我就不会这么被动的学JAVA了,到现在也学的很零散,没能形成系统知识。兴趣是最好的老师。努力学习JAVA中。。。
以下贴出代码,附有程序运行结果图。所用代码均只用作演示,存在不少缺陷。
实现了键盘方向键控制的最简单的球的移动及边缘判定,打印出球的实时坐标。
/** * */package ballgame;import java.awt.Color;import java.awt.Frame;import java.awt.Graphics;import java.awt.Image;import java.awt.Toolkit;import java.awt.event.KeyAdapter;import java.awt.event.KeyEvent;/** * 2014-6-11 * * @author Gelar */public class BallGame extends Frame {/** * */private static final long serialVersionUID = 1L;Image ball = Toolkit.getDefaultToolkit().getImage("images/ball.jpg");double x = 250;double y = 200;double xCoord = 250;double yCoord = 200;boolean left, right, up, down;public void paint(Graphics g) {g.drawImage(ball, (int) x, (int) y, null);if (left && x > 0) {x = x - 10;xCoord = x;printCoords();}if (right && x < 470) {x = x + 10;xCoord = x;printCoords();}if (up && y > 30) {y = y - 10;yCoord = y;printCoords();}if (down && y < 370) {y = y + 10;yCoord = y;printCoords();}}void launchFrame() {setSize(500, 400);setLocation(420, 170);setBackground(Color.black);setTitle("Ball Game");setVisible(true);new PaintThread().start();addKeyListener(new KeyMonitor());printInitialCoords();}void printInitialCoords() {System.out.println("(250.0,200.0)");}void printCoords() {if (left || right || up || down) {System.out.println("(" + xCoord + "," + yCoord + ")");}}public static void main(String[] args) {new BallGame().launchFrame();}class PaintThread extends Thread {public void run() {while (true) {repaint();try {Thread.sleep(200);} catch (InterruptedException e) {e.printStackTrace();}}}}class KeyMonitor extends KeyAdapter {public void keyPressed(KeyEvent e) {if (37 == e.getKeyCode()) {left = true;}if (39 == e.getKeyCode()) {right = true;}if (38 == e.getKeyCode()) {up = true;}if (40 == e.getKeyCode()) {down = true;}}public void keyReleased(KeyEvent e) {if (37 == e.getKeyCode()) {left = false;}if (39 == e.getKeyCode()) {right = false;}if (38 == e.getKeyCode()) {up = false;}if (40 == e.getKeyCode()) {down = false;}}}}
0 0
- 键盘控制小游戏简化版(功能添加更新。。)
- js键盘小游戏(新手)
- 6410 Eboot 添加键盘控制
- 键盘小游戏
- 键盘小游戏
- iOS给键盘添加控制栏
- VR项目添加键盘鼠标控制
- Android_Note(三)——添加、更新、保存记事本功能
- js键盘小游戏
- 小游戏键盘操作
- OpenGL之路(八)添加光照效果和键盘控制
- 喜讯:SOAOffice2010添加并发控制功能
- Qt虚拟键盘更新,支持手写识别功能
- ABAP 如何控制Dialog中的键盘(回车)功能
- AJAX自动提示,并添加有键盘上下选择功能
- android 添加ios点击edittext之外关闭键盘功能
- 功能节点通过添加参数对相应功能进行控制
- 键盘控制:
- WebBrowser介绍——Javascript与C++互操作
- 执行mvn eclipse:eclipse生成ecllipse项目文件,然后导入到eclipse中出错
- 恒大皇马足校启动西班牙分校 打造中国足球人
- 第2次实验——算法基本功 与 综合思考
- 今日头条创始人张一鸣:独特定位是我们的优势
- 键盘控制小游戏简化版(功能添加更新。。)
- Tcpdump的详细用法(转)
- UVa 507 - Jill Rides Again
- 驱动与设备的匹配
- 短讯-曝皇马购切尔西巴西国脚 穆帅安帅转会战打响
- Java+HTML预习笔记_20140610
- 多特宣布罗伊斯休战三月缺席新赛季开局阶段
- 设备与驱动的匹配
- Mina使用总结