使用java实现持续移动的小球
生活随笔
收集整理的這篇文章主要介紹了
使用java实现持续移动的小球
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
原創(chuàng)作品,可以轉(zhuǎn)載,但是請標注出處地址http://www.cnblogs.com/V1haoge/p/5559829.html
僅為自己學習作品,使用java的JFrame框架實現(xiàn)持續(xù)移動的小球。
最核心的部分為實現(xiàn)小球移動的move()方法,在小球碰到墻壁四壁的時候得以反彈,不會移到墻壁之外。
?
1 /** 2 * 使用java實現(xiàn)持續(xù)移動的小球 3 */ 4 5 package jframe; 6 7 import java.awt.Color; 8 import java.awt.Graphics; 9 10 import javax.swing.JFrame; 11 12 public class JFrameTest extends JFrame{ 13 //定義移動變量 14 int x = 0; 15 int y = 0; 16 int m = 1; 17 int n = 1; 18 //主函數(shù) 19 public static void main(String[] args) { 20 new JFrameTest(); 21 } 22 //使用構(gòu)造器創(chuàng)建窗體并設(shè)置 23 public JFrameTest(){ 24 this.setVisible(true); 25 this.setSize(500,500); 26 this.setDefaultCloseOperation(3); 27 this.setLocation(400, 100); 28 this.setResizable(false); 29 this.setTitle("測試框架"); 30 move(); 31 } 32 //重寫畫圖方法 33 @Override 34 public void paint(Graphics g) { 35 super.paint(g); 36 g.setColor(Color.BLACK); 37 g.fillOval(x, 25 + y, 50, 50); 38 } 39 //定義小球移動軌跡 40 public void move(){ 41 while(true){ 42 x += m; 43 y += n; 44 if(x >= 450){ 45 m = -m; 46 } 47 if(x < 0){ 48 m = 1; 49 } 50 if(y >= 425){ 51 n = -n; 52 } 53 if(y < 0){ 54 n = 1; 55 } 56 try { 57 Thread.sleep(1); 58 } catch (InterruptedException e) { 59 e.printStackTrace(); 60 } 61 repaint(); 62 } 63 } 64 }?
轉(zhuǎn)載于:https://www.cnblogs.com/V1haoge/p/5559829.html
總結(jié)
以上是生活随笔為你收集整理的使用java实现持续移动的小球的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JavaScript语法(二)
- 下一篇: 【Django】Django Debug