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

第一次写java的小游戏

想实现点击右下角的暂停 实现游戏的暂停和继续 不知道该怎么加,自己找了线程的内容但试了还是成功不了,求大佬们帮一下小白。代码有点乱,大佬们见谅。,,

TypingGame文件:

import javax.swing.JFrame;public class TypingGame {

public static void main(String[] args) {

JFrame frame = new JFrame();

TypingGamePanel panel = new TypingGamePanel();

frame.add(panel);

Thread t = new Thread(panel);

t.start();

panel.addKeyListener(panel);

panel.setFocusable(true);

panel.addMouseListener(panel);

frame.setSize(1500, 900);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE );

frame.setVisible(true);

}}

TypingGamePanel文件:

import java.awt.Color;

import java.awt.Font;

import java.awt.Graphics;

import java.awt.event.KeyEvent;

import java.awt.event.KeyListener;

import java.awt.event.MouseEvent;

import java.awt.event.MouseListener;

import java.awt.image.BufferedImage;

import java.io.IOException;import javax.imageio.ImageIO;

import javax.swing.JPanel;public class TypingGamePanel extends JPanel implements Runnable,KeyListener,MouseListener{

int[] xx = new int[10];

int[] yy = new int[10];

char[] words = new char[10];

int score = 0;

int speed = 10;

BufferedImage backImage;

public TypingGamePanel(){

try {

backImage = ImageIO.read(TypingGamePanel.class.getResource("car.jpg"));

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

for(int i=0;i<10;i++){

boolean equal;

xx[i] = (int)(100+Math.random()*1400);

yy[i] = -(int)(Math.random()*900);

words[i] = judge(i);

}

}

public char judge(int num){

char random = (char)(Math.random()*26+'A');

for(int i=0;i

if(words[i] == random)

judge(num);

}

return random;

}

public void paint(Graphics g){

super.paint(g);

g.drawImage(backImage,0,0,1500,900,null);

Font ft = new Font("宋体",Font.BOLD,25);

g.setFont(ft);

for(int i = 0; i < 10; i++){

g.setColor(Color.RED);

g.drawString(words[i]+"", xx[i], yy[i]);

g.setColor(Color.BLUE);

g.drawString("当前分数:",10,20);

g.drawString(score+"",140,20);

g.setColor(Color.orange);

g.fillRect(50, 50, 60, 30);

g.setColor(Color.yellow);

g.fillRect(50, 90, 60, 30);

g.setColor(Color.green);

g.fillRect(50, 130, 60, 30);

g.setColor(Color.white);

g.drawString("高速", 50, 70);

g.drawString("中速", 50, 110);

g.drawString("低速", 50, 150);

g.fillRect(1400,800,80,40);

g.setColor(Color.black);

g.drawString("暂停",1420,830);

}

}

public void run() {

// TODO Auto-generated method stub

while(true){

for(int i = 0;i < 10; i++){

yy[i]++;

if(yy[i]>900) {

yy[i] = 0;

score -= 10;

}

}

try {

Thread.sleep(speed);

} catch (InterruptedException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

repaint();

}

}

@Override

public void mouseClicked(MouseEvent e) {

// TODO Auto-generated method stub

int mouseX = e.getX();

int mouseY = e.getY();

if(mouseX > 50 && mouseX < 110 && mouseY > 50 && mouseY < 80)

speed = 5;

if(mouseX > 50 && mouseX < 110 && mouseY > 90 && mouseY < 120)

speed = 10;

if(mouseX > 50 && mouseX < 110 && mouseY > 130 && mouseY < 160)

speed = 20;

}

@Override

public void keyPressed(KeyEvent e) {

// TODO Auto-generated method stub

boolean tof = true;

for(int i=0; i<10;i++){

if(e.getKeyCode()==words[i]){

xx[i] = (int)(100+Math.random()*1400);

yy[i] = 0;

boolean equal;

char randomchar;

do

{

randomchar = (char)(Math.random()*26+'A');

equal = false;

for(int j=0;j<10;j++){

if(randomchar == words[j]){

equal = true;

break;

}

}

}while(equal);

words[i] = randomchar;

score += 10;

tof = false;

break;

}

}

if(tof) score -= 10;

} @Override

public void mouseEntered(MouseEvent arg0) {

// TODO Auto-generated method stub

} @Override

public void mouseExited(MouseEvent arg0) {

// TODO Auto-generated method stub

} @Override

public void mousePressed(MouseEvent arg0) {

// TODO Auto-generated method stub

} @Override

public void mouseReleased(MouseEvent arg0) {

// TODO Auto-generated method stub

} @Override

public void keyReleased(KeyEvent arg0) {

// TODO Auto-generated method stub

} @Override

public void keyTyped(KeyEvent arg0) {

// TODO Auto-generated method stub

}}

java游戏暂停弹出字体_小白写了个java的小游戏 想加个暂停的功能 无从下手 求大佬们帮...相关推荐

  1. java游戏暂停_小白写了个java的小游戏 想加个暂停的功能 无从下手 求大佬们帮...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 第一次写java的小游戏 想实现点击右下角的暂停 实现游戏的暂停和继续 不知道该怎么加,自己找了线程的内容但试了还是成功不了,求大佬们帮一下小白.代码有点 ...

  2. 微信小程序点击按钮弹出弹窗_转载 | 广东大学生就业创业微信小程序操作流程详解(一)...

    广东大学生就业创业微信小程序 操作流程详解(一) 转眼来到10月,炎炎夏日也阻挡不了青春的忙碌,同学萌走出校园,迈向社会. 在这段时间,同学们不仅要准备毕业论文,应对毕业答辩,还需要兼顾各种毕业手续的 ...

  3. 猜数字游戏缩小范围python_【python小白】一个猜数字的小游戏

    [失败和犯规] [成功] 源码:#一个猜数字的游戏a,b=0,15 print('这是一个猜数字的游戏,范围在%d-%d,总共9次机会,每猜三次范围减小10'%(a,b)) import random ...

  4. python爬虫运行不出结果_请问这个为什么就是爬不到,运行之后电脑卡的不行,求大佬指导...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 import requests from multiprocessing import Pool import re import json from r ...

  5. java自定义对话框弹出

    java自定义对话框弹出 本次实习因为写java界面,有一个自定义对话框的需求,在网上查了一些才发现了一种方法,所以记录一下.具体需求类似于这样:按下一个按钮弹出一个输入界面,输入行李的长宽高,然后进 ...

  6. Java POI 导出EXCEL经典实现 Java导出Excel弹出下载框

    原文转载:http://blog.csdn.net/evangel_z/article/details/7332535 目录(?)[+] 在web开发中,有一个经典的功能,就是数据的导入导出.特别是数 ...

  7. webview中获得焦点禁止弹出键盘_电脑键盘使用方法

    对于刚使用电脑的电脑新手而言,首先要做的就是熟悉键盘.不过,小编发现有许多的童鞋都怕文字过于繁多看的自己眼花,别担心,小编这有电脑键盘的示意图,能让大家一目了然. 对于经常需要使用电脑的人而言,键盘那 ...

  8. 用计算机弹出黎明的黑暗,STEAM打开黎明杀机启动游戏后弹出计算机丢失msvcp140period;dllperiod; | 手游网游页游攻略大全...

    发布时间:2015-12-23 恐怖黎明游戏进不去怎么办 丢失msvcp140.dll错误怎么办.有玩家在进入恐怖黎明游戏的时候出现系统报错,提示msvcp140.dll错误,导致无法进行游戏,下面9 ...

  9. 用JAVA写一款自己的小游戏

    用JAVA写一款自己的小游戏 我目前也处于一个学习的阶段,所以代码会有很多的错误,但是经过我几天的瞎调试目前还是可以玩的,但是可玩性还是很差 说一说怎么玩这个游戏把 设计初衷:KoalaChess,顾 ...

最新文章

  1. 利用OpenCV进行边缘检测
  2. 解析Objective-C中多态、动态类型和动态绑定
  3. Vmware14虚拟机黑屏问题
  4. 从源码角度解析Android中APK安装过程
  5. 个人计算机与手机的区别,手机与电脑的CPU是一回事吗?一共有六大区别,看看你知道多少!...
  6. MySQL之——GROUP BY分组取字段最大值
  7. SpringBoot集成Google开源图片处理框架,贼好用!
  8. 谷歌与军方合作新料:决定AI不用于武器前,还想帮军方搜集情报
  9. ASP.NET MVC Model绑定(五)
  10. 前几天入手一大菠萝,写个初始化教程
  11. Java应用案例分析_Java应用启动参数实例解析
  12. 让DB2跑得更快——DB2内部解析与性能优化
  13. clover更新驱动 后不能开机_黑苹果安装教程 2020 台式机版(长期更新)
  14. ns3学习之旅 ---NS3 开篇简介
  15. HTTP代理服务器的实现
  16. MySQL的金科玉律:“不要使用SELECT *”
  17. 苹果vpn是下一件大事
  18. Unity编辑器扩展——在Editor下动态添加监听事件
  19. 建立个人的腾讯云服务器
  20. python爬取电影天堂

热门文章

  1. tcpsyn发生在哪层_必看面试题之计算机网络:来自一位拿到了腾讯和字节双offer的大佬...
  2. 计算机组成原理简单计算机设计,计算机组成原理课设.doc
  3. android 能调用gcc_如何在命令行下使用Android NDK交叉编译工具
  4. android 中自定义键盘,【图片】自定义属于自己的专属键盘的思路!!!(需要有android编程基础)【exagear吧】_百度贴吧...
  5. abb限位开关已打开drv1_Telemecanique传感器限位开关产品系列
  6. Struts 2框架创建的第一个项目
  7. arduino 温度调节器_Arduino用温湿度传感器控制继电器,为什么点了串口助手才能运行,拔掉usb线,直接外界9V电源却用不了...
  8. laravel 任务队列_laravel队列-让守护进程处理耗时任务
  9. android显示网络图片控件,Android控件之ImageView(二)
  10. Django实现省市县级联菜单