java實現桌球遊戲
阿新 • • 發佈:2020-01-07
本文例項為大家分享了java實現桌球遊戲的具體程式碼,供大家參考,具體內容如下
思維
1視窗載入即建立一個視窗
2在視窗內顯示圖片,先後順序(桌面,球)否者會被覆蓋掉。
3.更改球的x,y,重新整理視窗
ecipse
1.建立於src同級的new folder
new—>folder---->image(檔名)
圖片直接從外部cpoy,在檔名上覆制
2.下面直接完整程式碼註釋都在裡邊
package day01; import java.awt.*; //導包 import javax.swing.*;//導包 public class BallGame extends JFrame {/*繼承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; //畫桌面球視窗的方法 public void paint(Graphics g ){ //System.out.println("一次"); g.drawImage(desk,null); g.drawImage(ball,(int)x,(int)y,null); // x=x+1; if(right) x=x+10; else x=x-10; if(x>856-40-30) //座框和球的直徑 right=false; if(x<40) //座框 right=true; } //視窗載入 void launchFrame(){ setSize(856,500); setLocation(50,50); setVisible(true); //重畫視窗 一秒25次 while(true) { repaint(); //重複paint這個函式 //異常處理 try catch try { Thread.sleep(40);//40ms重新整理 } catch (Exception e) { e.printStackTrace(); } } } //程式入口 public static void main(String[] args) { System.out.println("桌球遊戲"); BallGame game =new BallGame(); game.launchFrame(); } }
3.上下彈的程式碼
package day01; import java.awt.*; import javax.swing.*; public class BallGame2 extends JFrame { Image ball=Toolkit.getDefaultToolkit().getImage("image/ball.png"); Image desk=Toolkit.getDefaultToolkit().getImage("image/desk.jpg"); double x=100; double y=100; double degree =3.14/3; //畫視窗的方法 public void paint(Graphics g ){ //System.out.println("一次"); g.drawImage(desk,null); x=x+10*Math.cos(degree); y=y+10*Math.sin(degree); if(y>500-40-30|| y<40+40) // 框+座框 直徑 degree=-degree; if(x<40||x>856-40-30) degree=3.14-degree; } //視窗載入 void launchFrame(){ setSize(856,50); setVisible(true); //重畫視窗 一秒25次 while(true) { repaint(); try { Thread.sleep(40);//40ms重新整理 } catch (Exception e) { e.printStackTrace(); } } } //程式入口 public static void main(String[] args) { System.out.println("桌球遊戲"); BallGame2 game =new BallGame2(); game.launchFrame(); } }
不懂的大家可以交流,數學公式不用糾結。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。