import java.awt.*; import java.awt.event.*; public class PlayBalloon extends Frame implements ActionListener, WindowListener { private Button grow, shrink; private Balloon myBalloon; public static void main(String[] args) { PlayBalloon f = new PlayBalloon(); f.setSize(300, 200); f.setVisible(true); } public PlayBalloon() { setTitle("Balloon"); setLayout(new FlowLayout()); grow = new Button("Grow"); add(grow); shrink = new Button("Shrink"); add(shrink); myBalloon = new Balloon(20, 50, 50); } public void actionPerformed(ActionEvent event) { if (event.getSource() == grow) myBalloon.changeSize(10); if (event.getSource() == shrink) myBalloon.changeSize(-10); repaint(); } public void windowClosing(WindowEvent e) { System.exit(0); } public void windowIconified(WindowEvent e) { } public void windowOpened(WindowEvent e) { } public void windowClosed(WindowEvent e) { } public void windowDeiconified(WindowEvent e) { } public void windowActivated(WindowEvent e) { } public void windowDeactivated(WindowEvent e) { } public void paint (Graphics g) { myBalloon.display(g); } } class Balloon { private int diameter; private int xCoord, yCoord; Balloon(int initialDiameter, int initialX, int initialY) { diameter = initialDiameter; xCoord = initialX; yCoord = initialY; } public void changeSize(int change) { diameter = diameter + change; } public void display(Graphics g) { g.drawOval(xCoord, yCoord, diameter, diameter); } }