Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Applets and More 22, GridFiller Applets Write an applet that displays a 4 X 4 gr

ID: 3548853 • Letter: A

Question


Applets and More


22, GridFiller Applets

Write an applet that displays a 4 X 4 grid. When the user clicks on a square in the grid, the applet should draw a filled circle in it. If the square already has a circle, clicking on it should cause the circle to disappear.






23, Stopwatch Applet

Write an applet that simulates a stopwatch. It should have a Start button and a Stop button. When the Start is clicked the applet should count the seconds that pass. When the Stop button is clicked, the applet should stop counting seconds.

Explanation / Answer

GridFiller Applets :


public class Box {

               

                private int upperLeftX;

                private int upperLeftY;

                private int height;

                private int width;

                private Color boxColor;

               

               

                public Box(int upperX, int upperY, int h, int w, Color myColor){

                this.upperLeftX = upperX;

                this.upperLeftY = upperY;

                this.height = h;

                this.width = w;

                this.boxColor = myColor;                            

                }

               

                public int getUpperLeftX() {

                                return upperLeftX;

                }

                public void setUpperLeftX(int upperLeftX) {

                                this.upperLeftX = upperLeftX;

                }

                public int getUpperLeftY() {

                                return upperLeftY;

                }

                public void setUpperLeftY(int upperLeftY) {

                                this.upperLeftY = upperLeftY;

                }

                public int getHeight() {

                                return height;

                }

                public void setHeight(int height) {

                                this.height = height;

                }

                public int getWidth() {

                                return width;

                }

                public void setWidth(int width) {

                                this.width = width;

                }

                public Color getBoxColor() {

                                return boxColor;

                }

                public void setBoxColor(Color boxColor) {

                                this.boxColor = boxColor;

                }

                public void display(Graphics g){

                                g.fillRect(upperLeftX,upperLeftY,width,height);

                                g.setColor(boxColor);

                }

                }


Stopwatch Applet :



import java.awt.event.*;

import javax.swing.*;

public class StopWatch extends JLabel

            implements MouseListener, ActionListener {

   private long startTime;   // Start time of stopwatch.

                             //   (Time is measured in milliseconds.)

   private boolean running; // True when the stopwatch is running.

   private Timer timer; // A timer that will generate events

                         // while the stopwatch is running

   public StopWatch() {

         // Constructor.

      super(" Click to start timer. ", JLabel.CENTER);

      addMouseListener(this);

   }

   public void actionPerformed(ActionEvent evt) {

          // This will be called when an event from the

          // timer is received. It just sets the stopwatch

          // to show the amount of time that it has been running.

          // Time is rounded down to the nearest second.

       long time = (System.currentTimeMillis() - startTime) / 1000;

       setText("Running: " + time + " seconds");

   }

   public void mousePressed(MouseEvent evt) {

          // React when user presses the mouse by

          // starting or stopping the stopwatch. Also start

        // or stop the timer.

      if (running == false) {

            // Record the time and start the stopwatch.

         running = true;

         startTime = evt.getWhen(); // Time when mouse was clicked.

         setText("Running: 0 seconds");

         if (timer == null) {

            timer = new Timer(100,this);

            timer.start();

         }

         else

            timer.restart();

      }

      else {

            // Stop the stopwatch. Compute the elapsed time since the

            // stopwatch was started and display it.

         timer.stop();

         running = false;

         long endTime = evt.getWhen();

         double seconds = (endTime - startTime) / 1000.0;

         setText("Time: " + seconds + " sec.");

      }

   }

   public void mouseReleased(MouseEvent evt) { }

   public void mouseClicked(MouseEvent evt) { }

   public void mouseEntered(MouseEvent evt) { }

   public void mouseExited(MouseEvent evt) { }

} // end StopWatchRunner

A small applet to test the component:

/*

   A trivial applet that tests the StopWatchRunner component.

   The applet just creates and shows a StopWatchRunner.

*/

import java.awt.*;

import javax.swing.*;

public class Test1 extends JApplet {

   public void init() {

      StopWatch watch = new StopWatch();

      watch.setFont( new Font("SansSerif", Font.BOLD, 24) );

      watch.setBackground(Color.white);

      watch.setForeground( new Color(180,0,0) );

      watch.setOpaque(true);

      getContentPane().add(watch, BorderLayout.CENTER);

   }

}


Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote