01/11/2017

Bouncing Ball Program in Java Using Applet | Source Code

Write a java program using an applet for bouncing balls. the ball should change its colour for each bounce. Bouncing. Ball Program in Java Using Applet with source code or How to create a bouncing ball animation. How to make a bouncing ball in java or java bouncing balls collision detection or multiple bouncing balls java or moving ball program in java.

Simple Bouncing ball animation in Java using Applet. This is a simple GUI(Graphical User Interface) Animation. In this animation, 4 Balls with different colours (Red, Blue, Magenta, and Yellow) that are Bouncing randomly in a square. They are actually moving in a square so basically Bouncing ball animation in Applet. 

We are using a "For Loop" and running this "For Loop" Infinite and changing their Ovels position and some values and repainting all four balls in a new place so in this way, all four ball looks like they are moving without changing their colour. We also use some Events all events are below.

  • mouseExited
  • mouseReleased
  • mouseEntered
  • mousePressed
  • mouseClicked

Check this first so you can run the Bouncing ball animation in Applet very easily without any errors and without any problems How to Run Java Applets and Swing Using Command-Line.

Bouncing Ball Program in Java Using Applet


import java.applet.*;
import java.awt.*;
import java.awt.event.*;
//

/* Program By Ghanendra Yadav
    Visit http://www.programmingwithbasics.com/
*/
public class BOUNCINGBALLS extends Applet implements MouseListener, Runnable {
    Thread t = null;
    int x1 = 10, x2 = 10, x3 = 10, x4 = 10;
    int y1 = 300, y2 = 300, y3 = 300, y4 = 300;
    int flagx1, flagy1, flagx2, flagy2;
    int flagx3, flagy3, flagx4, flagy4;

    public void init() {
        addMouseListener(this);
    }
    public void mouseExited(MouseEvent me) {}
    public void mouseReleased(MouseEvent me) {}
    public void mouseEntered(MouseEvent me) {}
    public void mousePressed(MouseEvent me) {}
    public void mouseClicked(MouseEvent me) {}

    public void start() {
        t = new Thread(this);
        t.start();
    }

    public void run() {
        for (;;) {
            try {
                repaint();
                if (y1 <= 50)
                    flagx1 = 0;
                else if (y1 >= 300)
                    flagx1 = 1;
                if (x1 <= 10)
                    flagy1 = 0;
                else if (x1 >= 400)
                    flagy1 = 1;
                if (y2 <= 50)
                    flagx2 = 0;
                else if (y2 >= 300)
                    flagx2 = 1;
                if (x2 <= 10)
                    flagy2 = 0;
                else if (x2 >= 400)
                    flagy2 = 1;
                if (y3 <= 50)
                    flagx3 = 0;
                else if (y3 >= 300)
                    flagx3 = 1;
                if (x3 <= 10)
                    flagy3 = 0;
                else if (x3 >= 400)
                    flagy3 = 1;
                if (y4 <= 50)
                    flagx4 = 0;
                else if (y4 >= 300)
                    flagx4 = 1;
                if (x4 <= 10)
                    flagy4 = 0;
                else if (x4 >= 400)
                    flagy4 = 1;
                Thread.sleep(10);
            } catch (InterruptedException e) {}
        }
    }
    public void paint(Graphics g) {
        g.drawRect(10, 50, 410, 270);

        g.setColor(Color.blue);
        g.fillOval(x1, y1, 20, 20);
        if (flagx1 == 1)
            y1 -= 2;
        else if (flagx1 == 0)
            y1 += 2;
        if (flagy1 == 0)
            x1 += 4;
        else if (flagy1 == 1)
            x1 -= 4;
        g.setColor(Color.red);
        g.fillOval(x2, y2, 20, 20);
        if (flagx2 == 1)
            y2 -= 4;
        else if (flagx2 == 0)
            y2 += 4;
        if (flagy2 == 0)
            x2 += 3;
        else if (flagy2 == 1)
            x2 -= 3;
        g.setColor(Color.yellow);
        g.fillOval(x3, y3, 20, 20);
        if (flagx3 == 1)
            y3 -= 6;
        else if (flagx3 == 0)
            y3 += 6;
        if (flagy3 == 0)
            x3 += 2;
        else if (flagy3 == 1)
            x3 -= 2;
        g.setColor(Color.magenta);
        g.fillOval(x4, y4, 20, 20);
        if (flagx4 == 1)
            y4 -= 5;
        else if (flagx4 == 0)
            y4 += 5;
        if (flagy4 == 0)
            x4 += 1;
        else if (flagy4 == 1)
            x4 -= 1;
    }
}

Bouncing Ball in Java Output


Bouncing Ball in Java Output

Bouncing Ball Program in Java Using Applet Output

Similar to Java Applet Projects


Previous Post
Next Post

post written by:

Hi, I’m Ghanendra Yadav, SEO Expert, Professional Blogger, Programmer, and UI Developer. Get a Solution of More Than 500+ Programming Problems, and Practice All Programs in C, C++, and Java Languages. Get a Competitive Website Solution also Ie. Hackerrank Solutions and Geeksforgeeks Solutions. If You Are Interested to Learn a C Programming Language and You Don't Have Experience in Any Programming, You Should Start with a C Programming Language, Read: List of Format Specifiers in C.
Follow Me

0 Comments: