这篇文章主要讲解了“Java如何实现简单台球游戏”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java如何实现简单台球游戏”吧!
Java实现简单台球桌问题,供大家参考,具体内容如下
需求:
使小球可以在桌面上移动,移动到桌面边缘将被弹回,显示小区的移动
程序源代码:
package 桌球游戏;import java.awt.*;import javax.swing.*;public class BallGame extends JFrame { Image ball=Toolkit.getDefaultToolkit().getImage("image/ball.png"); Image desk=Toolkit.getDefaultToolkit().getImage("image/desk.jpg"); double x=100;//小球的横坐标 double y=100;//小球的纵坐标 /*boolean right =true; //方向*/ double degree=3.14/3; //弧度表示,60° //窗口加载 void launchFrame() { setSize(856,500); //参数和桌面有关 setLocation(400,400); setVisible(true); //设置窗口可见 //重画窗口,每秒画25次 while(true) { repaint();//repaint()方法会调用paint()方法 try { Thread.sleep(20);//40ms, }catch(Exception e) { e.printStackTrace(); } } } //画窗口方法 public void paint(Graphics g){ System.out.println("窗口被画一次!"); g.drawImage(desk,0,0,null); g.drawImage(ball, (int)x,(int)y, null); /* //注释内容为小球水平方向移动 x=x+1; if(right) { x+=10; }else { x-=10; } if(x>856-40-30) //30小球的直径,40球桌边框的 right=false; if(x<40) right=true; //y=y+2; * */ x=x+10*Math.cos(degree); y=y+10*Math.sin(degree); //当小球遇到桌面的上下界面时,发生反转, if(y>500-40-30||y<40+40) //(40+40)一个表示标题栏,一个时球桌宽 degree=-degree; if(x<0+40||x>856-40-30) degree =3.14-degree; } //main 方法执行入口 public static void main(String []args) { System.out.println("欢迎来到小球游戏!"); BallGame game=new BallGame(); game.launchFrame(); }}
感谢各位的阅读,以上就是“Java如何实现简单台球游戏”的内容了,经过本文的学习后,相信大家对Java如何实现简单台球游戏这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是天达云,小编将为大家推送更多相关知识点的文章,欢迎关注!