源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

java实现会反弹的小球示例

  • 时间:2022-03-19 09:18 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:java实现会反弹的小球示例
Java实现简单的球的弹射,碰到墙壁就反弹一下,代码如下  [img]http://files.jb51.net/file_images/article/201404/2012073112500932.gif?201432911529[/img]
[u]复制代码[/u] 代码如下:
package tsct; import java.awt.Color; import java.awt.Graphics; import java.awt.Image; import java.awt.event.WindowStateListener; import java.io.File; import java.io.IOException; import javax.imageio.ImageIO; import javax.swing.JFrame; public class Main extends JFrame implements Runnable {     int x=40;     int y=30;     int width=50;     int height=50;     boolean xAdd=true;     boolean yAdd=true;     public void paint(Graphics g)     {         super.paint(g);         //g.fillRect(x, y, width, height);         g.setColor(Color.red);         g.fillOval(x, y, width, height);     }     int i=1;     @Override     public void run()     {         // TODO Auto-generated method stub         while(true)         {             if(yAdd)                 y+=15;             else                 y-=15;             if(y>=this.getHeight()-height||y<=25)                 yAdd=!yAdd;             if(xAdd)                 x+=30;             else                 x-=30;             if(x>=this.getWidth()-width||x<=5)                 xAdd=!xAdd;             repaint();             try             {                 Thread.sleep(40);                 i++;             }             catch (InterruptedException e)             {                 e.printStackTrace();             }         }     }     public static void main(String[] args)     { //        Main main=new Main(); //        //        main.setVisible(true); //        main.run();         Main main=new Main();         main.setVisible(true);         main.setBounds(50, 50, 800, 600);         Thread thread=new Thread(main);         thread.start();         try         {             Image image=ImageIO.read(new File(Main.class.getResource("").toString()));         }         catch (IOException e)         {             // TODO Auto-generated catch block             e.printStackTrace();         }     } }
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部