Answered step by step
Verified Expert Solution
Question
1 Approved Answer
import java.awt. * ; import java.awt.event. * ; import javax.swing. * ; class Ball { static int defaultDiameter = 1 0 ; static Color defaultColor
import java.awt.;
import java.awt.event.;
import javax.swing.;
class Ball
static int defaultDiameter ;
static Color defaultColor Color.white;
static Rectangle defaultBox new Rectangle;
private int x y;
private int dx dy;
private int diameter;
private Color color;
private Rectangle box;
public Ball int x int y int dx int dy
x x;
y y;
dx dx;
dy dy;
color defaultColor;
diameter defaultDiameter;
public void setColor Color c
color c;
public void setBoundingBox Rectangle r
box r;
public void paint Graphics g
gsetColor color ;
gfillOval x y diameter, diameter ;
void constrain
int x box.x;
int y box.y;
int x x box.width diameter;
int y y box.height diameter;
if x x
dx Math.absdx;
if x x
dx Math.absdx;
if y y
dy Math.absdy;
if y y
dy Math.absdy;
public void action
x x dx;
y y dy;
constrain;
class BallPanel extends JPanel implements ActionListener
private int width, height;
private Ball ball;
private Timer timer new Timer this;
public BallPanel int width, int height
this.width width;
this.height height;
ball new Ball width height ;
ball.setBoundingBox new Rectangle width, height ;
timer.start;
public void paintComponent Graphics g
gsetColor Color.black ;
gfillRect width, height ;
ball.paint g ;
public void actionPerformedActionEvent e
ifwidth getWidth height getHeight
wasResizedgetWidthgetHeight;
ball.action;
repaint;
public void wasResized int newWidth, int newHeight
width newWidth;
height newHeight;
class BallWorld extends JFrame
private BallPanel panel new BallPanel ;
public BallWorld
Container c getContentPane;
caddpanel BorderLayout.CENTER;
setSize;
setLocation;
setVisibletrue;
setDefaultCloseOperationEXITONCLOSE;
public static void mainString args
BallWorld world new BallWorld;
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started