加载图片和让图片移动

思路:,想要让小球动起来首先需要让他在窗口的位置不断的变化才能实现,就直接在小球的定位代码下手创建一个变量X和Y 让他不停的做出重画动作

//加载窗口//小球水平飞//导入包

import java.awt.*;

import javax.swing.*;

编辑窗口的代码

public class BallGame extends JFrame{

   int

i=1;

   Image

ball = Toolkit.getDefaultToolkit().getImage(“images/ball.png”);//图片加载代码

   Image

desk = Toolkit.getDefaultToolkit().getImage(“images/desk.jpg”);
在这里插入图片描述

   //给小球定位在窗口的位置

   double

x=100;//小球的坐标

   double

y=100;

//小球运动的方向

   boolean

right = true;

   //让图片显示在窗口上的方法//画窗口的方法

   public

void paint(Graphics g){

          g.drawImage(desk,

0, 0, null);

          g.drawImage(ball,

(int)x, (int)y, null);

          if

(right) {

                 x=

x+10;

          }else{

                 x=x-10;

//在这个过程中小球会超出桌子的边缘所以要减去相应的距离不然显得不真实

          }if

(x>856-40-30) {//856是窗口的宽度,40是桌边的宽度,30是小球的直径

                 right=false;

          }if(x<40){

//碰到边就会回弹

                 right

= true;

          }}

   void

launchFrame(){

          setSize(856,500);//窗口大小;

          setLocation(800,800);//出现位置定位

          setVisible(true);

          //重画窗口

重画就相当于刷新窗口,这样才能看到小球移动起来的效果

          while(true){

                 repaint();

                 try{Thread.sleep(40);//毫秒Thread.sleep(40);//毫秒

                 }catch(Exception

e){e.printStackTrace();}}}

   //main方法是程序执行的入口

public static void main(String[] args){

    System.out.println("666");

    BallGame game=new BallGame();

    game.launchFrame();

}}

这样小球就会循环往复的移动了
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44589117/article/details/90046409