1. 程式人生 > 程式設計 >java實現桌球遊戲

java實現桌球遊戲

本文例項為大家分享了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();
 }

}

不懂的大家可以交流,數學公式不用糾結。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。