java实战之桌球小游戏
作者:北冥有鱼love 时间:2022-04-22 20:40:13
本文实例为大家分享了java桌球小游戏的具体代码,供大家参考,具体内容如下
源码:
import java.awt.*;
import javax.swing.*;
public class BallGame2 extends JFrame{
Image ball = Toolkit.getDefaultToolkit().getImage("images/ball.png");
Image desk = Toolkit.getDefaultToolkit().getImage("images/desk.jpg");
double x = 100; //小球的横坐标
double y = 100; //小球的纵坐标
double degree = 3.14/3; //弧度,此处就是60度
//画窗口的方法
public void paint(Graphics g) {
System.out.println("窗口被画了一次! ");
g.drawImage(desk, 0, 0, null);
g.drawImage(ball, (int)x, (int)y, null);
x = x + 10*Math.cos(degree);
y = y + 10*Math.sin(degree);
if(y>500-40-30 || y<40+40) { //500是窗口高度, 40是桌子边框, 30是球直径, 最后一个40是标题栏的高度
degree = -degree; //小球触碰上下边界时,只改变纵坐标方向
}
if(x<40 || x>856-40-30) {
degree = 3.14 - degree; //小球触碰左右边界时,只改变横坐标方向
}
}
//窗口加载
void launchFrame() {
setSize(856,500); //窗口大小
setLocation(50,50); //窗口位置
setVisible(true); //显示窗口
//重画窗口
while(true) {
repaint();
try {
Thread.sleep(40);
} catch (InterruptedException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
}
}
//main方法是程序执行的入口
public static void main(String[] strgs) {
BallGame2 ballgame = new BallGame2();
ballgame.launchFrame();
}
}
图片:
注意:images文件夹保持和src在同级目录下:
运行效果:
来源:https://blog.csdn.net/qq_33378853/article/details/82924155
标签:java,桌球,游戏
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
关于Springboot中JSCH的使用及说明
2023-11-28 02:32:16
C++实现softmax函数的面试经验
2023-06-16 02:07:47
![](https://img.aspxhome.com/file/2023/1/66321_0s.png)
java1.8安装及环境变量配置教程
2023-04-29 10:36:49
![](https://img.aspxhome.com/file/2023/3/65153_0s.png)
Java中的这些骚操作你不能不知道!!!
2022-07-08 12:28:14
![](https://img.aspxhome.com/file/2023/4/60574_0s.png)
SpringBoot实现动态定时任务的示例代码
2022-06-22 19:27:39
springmvc 分页查询的简单实现示例代码
2022-01-09 11:08:22
SpringBoot后端上传文件类型检测方式
2021-07-02 05:00:04
![](https://img.aspxhome.com/file/2023/6/63296_0s.jpg)
Java如何在沙箱环境中测试支付宝支付接口
2023-11-02 14:55:15
![](https://img.aspxhome.com/file/2023/5/58745_0s.png)
Java程序员必须知道的5个JVM命令行标志
2023-11-11 15:30:36
C++语言实现线性表之链表实例
2023-06-20 22:21:20
springboot远程debug调试全过程
2023-11-25 07:05:56
![](https://img.aspxhome.com/file/2023/7/60247_0s.png)
Java8中Optional类的使用说明
2023-07-25 13:31:32
![](https://img.aspxhome.com/file/2023/1/57821_0s.png)
C语言中求字符串长度的函数的几种实现方法
2023-07-04 23:29:05
SpringBoot security安全认证登录的实现方法
2021-05-30 08:09:56
![](https://img.aspxhome.com/file/2023/5/63685_0s.png)
Java实现TopK问题的方法
2023-11-10 20:32:14
Java实现扑克牌程序
2023-11-11 12:09:52
![](https://img.aspxhome.com/file/2023/0/59340_0s.jpg)
Java源码解析之object类
2023-11-05 00:46:28
java基础的详细了解第七天
2023-02-01 12:06:26
![](https://img.aspxhome.com/file/2023/0/63700_0s.png)
Java的RxJava库操作符的用法及实例讲解
2021-12-14 22:31:41
Hibernate双向多对多映射关系配置代码实例
2022-12-26 22:30:30