`
dcj3sjt126com
  • 浏览: 1871376 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java中简单的指法练习游戏(仅在32位下正常运行)

阅读更多
import java.awt.*;
import java.awt.event.*;
import java.awt.font.*;
import java.awt.print.*;

import javax.swing.*;

public class typewrite {

	public static void main(String[] args) {
		JFrame w = new JFrame("typewrite game");
		w.setSize(300, 400);
		w.setFont(new Font("",10,100000));
		w.setBackground(Color.RED);
		MyPanel mp = new MyPanel();
		w.add(mp);
		w.addKeyListener(mp);
		mp.addKeyListener(mp);
		Thread t = new Thread(mp);
		t.start();
		w.setVisible(true);
	}
}

class MyPanel extends JPanel implements Runnable, KeyListener ,MouseListener{

	private static final long serialVersionUID = 1L;
	int x[] = new int[10];
	int y[] = new int[10];
	char c[] = new char[10];
	int sum = 1000;

	public MyPanel() {
		for (int i = 0; i < 10; i++) {
			x[i] = (int) (Math.random() * 260);
			y[i] = (int) (Math.random() * 300);
			c[i] = (char) (Math.random() * 26 + 97);
		}
	}

	public void paint(Graphics g) {
		g.clearRect(0, 0, 300, 400);
		g.setColor(Color.BLACK);

		for (int i = 0; i < 10; i++) {
			g.drawString("" + c[i], x[i], y[i]);
		}

		g.setColor(Color.GREEN);
		g.drawString("score: " + sum, 20, 10);
		if (sum < 0) {
			g.clearRect(0, 0, 300, 400);
			g.drawString("GAME OVER", 100, 200);

		}
	}

	public void run() {
		while (true) {
			for (int i = 0; i < 10; i++) {
				y[i]++;
				if (y[i] > 400) {
					y[i] = 0;
					x[i] = (int) (Math.random() * 260);
					c[i] = (char) (Math.random() * 27 + 97);
					sum -= 100;
				}
			}

			if (sum < 0) 
				return;
			
			try {
				Thread.sleep(40);
			} catch (InterruptedException e) {
				e.printStackTrace();
			}
			repaint();

		}
	}

	@Override
	public void keyPressed(KeyEvent e) {
		char cc = e.getKeyChar();
		int yy = -1;
		int index = -1;

		for (int i = 0; i < 10; i++) {
			if (cc == c[i]) {
				if (y[i] > yy) {
					yy = y[i];
					index = i;
				}
			}
		}

		if(index>-1){
			y[index]=0;
			x[index]=(int)(Math.random()*260);
			c[index]=(char)(Math.random()*26+97);
			sum+=10;
		}else{
			sum-=100;
		}
	}

	@Override
	public void keyReleased(KeyEvent e) { }

	@Override
	public void keyTyped(KeyEvent e) { }

	@Override
	public void mouseClicked(MouseEvent arg0) { }

	@Override
	public void mouseEntered(MouseEvent arg0) { }

	@Override
	public void mouseExited(MouseEvent arg0) { }

	@Override
	public void mousePressed(MouseEvent arg0) { }

	@Override
	public void mouseReleased(MouseEvent arg0) { }

}

 

分享到:
评论

相关推荐

    基于Java的指法练习小游戏的设计与实现.pdf

    在指法练习小游戏中,事件监听器将捕捉用户的键盘操作事件,当用户正确或错误地敲击指定的字母按键时,程序会根据事件触发相应的逻辑,更新分数或执行其他游戏动作。Java Swing中事件处理通常通过实现ActionListener...

    32位的Java Runtime Environment

    同时,开发者在测试跨平台兼容性时,也需要32位JRE来确保软件在32位环境下的正常运行。 总结来说,32位的Java Runtime Environment在32位操作系统中起着至关重要的作用,为运行Java应用程序提供必要环境。随着技术...

    JAVA 练习,小游戏!.zip

    JAVA 练习,小游戏!JAVA 练习,小游戏!JAVA 练习,小游戏! JAVA 练习,小游戏!JAVA 练习,小游戏!JAVA 练习,小游戏! JAVA 练习,小游戏!JAVA 练习,小游戏!JAVA 练习,小游戏! JAVA 练习,小游戏!JAVA ...

    java图形界面,贪吃蛇游戏练习.zip

    java图形界面,贪吃蛇游戏练习.zipjava图形界面,贪吃蛇游戏练习.zip java图形界面,贪吃蛇游戏练习.zipjava图形界面,贪吃蛇游戏练习.zip java图形界面,贪吃蛇游戏练习.zipjava图形界面,贪吃蛇游戏练习.zip java图形...

    JAVA项目坦克大战小游戏练习

    本项目以"JAVA项目坦克大战小游戏练习"为主题,旨在帮助开发者通过实际操作,深入理解和应用JAVA编程语言。 一、JAVA基础应用 该项目首先需要掌握JAVA的基础语法,包括类、对象、继承、多态等面向对象编程概念。...

    指法练习程序

    在本案例中,我们关注的是一个名为“简易指法练习程序”的项目。 1. **键盘指法基础**:指法练习程序的核心是教用户如何正确分配手指在键盘上的位置,以便在不看键盘的情况下快速输入。标准的指法策略是将左手小指...

    java面向对象初学者练习小游戏.zip

    java面向对象初学者练习小游戏.zipjava面向对象初学者练习小游戏.zip java面向对象初学者练习小游戏.zipjava面向对象初学者练习小游戏.zip java面向对象初学者练习小游戏.zipjava面向对象初学者练习小游戏.zip java...

    java jdk 32位

    Java JDK 32位是Java开发环境中不可或缺的部分,主要用于32位操作...总之,Java JDK 32位在进行Java和Android开发时扮演着重要角色,尤其是在处理旧项目或配合其他旧版工具时。确保正确安装和配置,是高效开发的基础。

    java各种代码练习

    在Java中,学习如何创建、实例化类和调用方法是基础中的基础。例如,`main`方法是每个Java应用程序的入口点,`System.out.println`用于输出文本到控制台。 2. **界面设计**: Java提供了图形用户界面(GUI)组件,...

    Java写的打地鼠小游戏

    在开发过程中,开发者需要考虑多平台兼容性,确保游戏能在不同的操作系统上正常运行。Java的“一次编写,到处运行”特性在这里发挥了重要作用。"Mouse.jar"已经过多平台测试,证明了这一点。 此外,游戏的优化也是...

    一个扑克游戏,用于Java集合框架练习.zip

    一个扑克游戏,用于Java集合框架练习一个扑克游戏,用于Java集合框架练习 一个扑克游戏,用于Java集合框架练习一个扑克游戏,用于Java集合框架练习 一个扑克游戏,用于Java集合框架练习一个扑克游戏,用于Java集合...

    Thinking in Java 练习题答案

    1. **基础语法**:在书中,读者会遇到关于类、对象、封装、继承、多态等基础知识的练习题。解答这部分问题时,你需要理解Java如何创建和使用类,以及如何通过对象进行交互。 2. **异常处理**:Java中的异常处理是...

    java_windows_32位与64位串口驱动

    如果Java应用程序是在64位JVM下运行,即使程序本身是32位的,也必须使用64位的串口驱动。同样,32位JVM需要32位的驱动。 在实际开发中,为了确保兼容性和稳定性,开发者应该测试应用程序在不同的操作系统和硬件配置...

    Java贪吃蛇游戏实训(源代码+可运行Jar包+实训报告)

    本次项目设计主要是完成《贪吃蛇》游戏的基本操作,需要满足以下几点要求:(1)构建适当的窗口大小,设置键盘监听功能,按下空格键游戏开始,使用方向键来改变蛇的运行轨迹,使蛇可以吃到食物。(2) 使用Random函数来...

    《Java技术》综合练习题

    在练习题中,可能会涉及对这些概念的理解和应用,例如编写简单的计算器或判断逻辑。 面向对象编程是Java的核心特性,包括类、对象、封装、继承、多态等概念。在练习中,你可能需要设计类和对象,实现类之间的继承...

    java基础练习源码

    在描述中提到,“随着毕老师的java基础视频教程的进度写的一些代码”,这暗示了这些源码文件是按照教程的章节顺序编写的,可能包括了每一课的重点示例和练习。通过这些源码,学习者可以加深对Java语言的理解,实践...

Global site tag (gtag.js) - Google Analytics