Results 1 to 4 of 4
  1. #1
    saytri is offline Member
    Join Date
    Dec 2007
    Posts
    34
    Rep Power
    0

    Default making a count down timer using java

    I need to do a count down timer using java. Anyone got any idea of how to do it or where to find information about doing it? Thanks a lot. I appreciate a lot the help. :-)

  2. #2
    CaptainMorgan's Avatar
    CaptainMorgan is offline Moderator
    Join Date
    Dec 2007
    Location
    NewEngland, US
    Posts
    835
    Rep Power
    9

    Default

    Without any timer specifics included in your post, check this timer out from Sun. Appears possible through using the Timer class.

  3. #3
    saytri is offline Member
    Join Date
    Dec 2007
    Posts
    34
    Rep Power
    0

    Default

    I am doing a quiz, and i want that the questions are answered with a specific amount of time eg: in 50seconds (I don't know if this is called a count down timer). If the user is unable to answer the questions in this amount of time it will issue a message saying "Time Out".

  4. #4
    feniger is offline Member
    Join Date
    Dec 2007
    Posts
    17
    Rep Power
    0

    Default

    Here is a Countdown example applet I have if it helps you in any way:

    import java.applet.*;
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import javax.swing.Timer; // not java.util.Timer
    import java.text.NumberFormat;
    import java.net.*;

    /**
    * An applet that counts down from a specified time. When it reaches 00:00,
    * it optionally plays a sound and optionally moves the browser to a new page.
    * Place the mouse over the applet to pause the count; move it off to resume.
    * This class demonstrates most applet methods and features.
    **/
    public class Countdown extends JApplet implements ActionListener, MouseListener
    {
    long remaining; // How many milliseconds remain in the countdown.
    long lastUpdate; // When count was last updated
    JLabel label; // Displays the count
    Timer timer; // Updates the count every second
    NumberFormat format; // Format minutes:seconds with leading zeros
    Image image; // Image to display along with the time
    AudioClip sound; // Sound to play when we reach 00:00

    // Called when the applet is first loaded
    public void init() {
    // Figure out how long to count for by reading the "minutes" parameter
    // defined in a <param> tag inside the <applet> tag. Convert to ms.
    String minutes = getParameter("minutes");
    if (minutes != null) remaining = Integer.parseInt(minutes) * 60000;
    else remaining = 600000; // 10 minutes by default

    // Create a JLabel to display remaining time, and set some properties.
    label = new JLabel();
    label.setHorizontalAlignment(SwingConstants.CENTER );
    label.setOpaque(true); // So label draws the background color

    // Read some parameters for this JLabel object
    String font = getParameter("font");
    String foreground = getParameter("foreground");
    String background = getParameter("background");
    String imageURL = getParameter("image");

    // Set label properties based on those parameters
    if (font != null) label.setFont(Font.decode(font));
    if (foreground != null) label.setForeground(Color.decode(foreground));
    if (background != null) label.setBackground(Color.decode(background));
    if (imageURL != null) {
    // Load the image, and save it so we can release it later
    image = getImage(getDocumentBase(), imageURL);
    // Now display the image in the JLabel.
    label.setIcon(new ImageIcon(image));
    }

    // Now add the label to the applet. Like JFrame and JDialog, JApplet
    // has a content pane that you add children to
    getContentPane().add(label, BorderLayout.CENTER);

    // Get an optional AudioClip to play when the count expires
    String soundURL = getParameter("sound");
    if (soundURL != null) sound=getAudioClip(getDocumentBase(), soundURL);

    // Obtain a NumberFormat object to convert number of minutes and
    // seconds to strings. Set it up to produce a leading 0 if necessary
    format = NumberFormat.getNumberInstance();
    format.setMinimumIntegerDigits(2); // pad with 0 if necessary

    // Specify a MouseListener to handle mouse events in the applet.
    // Note that the applet implements this interface itself
    addMouseListener(this);

    // Create a timer to call the actionPerformed() method immediately,
    // and then every 1000 milliseconds. Note we don't start the timer yet.
    timer = new Timer(1000, this);
    timer.setInitialDelay(0); // First timer is immediate.
    }

    // Free up any resources we hold; called when the applet is done
    public void destroy() { if (image != null) image.flush(); }

    // The browser calls this to start the applet running
    // The resume() method is defined below.
    public void start() { resume(); } // Start displaying updates

    // The browser calls this to stop the applet. It may be restarted later.
    // The pause() method is defined below
    public void stop() { pause(); } // Stop displaying updates

    // Return information about the applet
    public String getAppletInfo() {
    return "Countdown applet Copyright (c) 2003 by David Flanagan";
    }

    // Return information about the applet parameters
    public String[][] getParameterInfo() { return parameterInfo; }

    // This is the parameter information. One array of strings for each
    // parameter. The elements are parameter name, type, and description.
    static String[][] parameterInfo = {
    {"minutes", "number", "time, in minutes, to countdown from"},
    {"font", "font", "optional font for the time display"},
    {"foreground", "color", "optional foreground color for the time"},
    {"background", "color", "optional background color"},
    {"image", "image URL", "optional image to display next to countdown"},
    {"sound", "sound URL", "optional sound to play when we reach 00:00"},
    {"newpage", "document URL", "URL to load when timer expires"},
    };

    // Start or resume the countdown
    void resume() {
    // Restore the time we're counting down from and restart the timer.
    lastUpdate = System.currentTimeMillis();
    timer.start(); // Start the timer
    }

    // Pause the countdown
    void pause() {
    // Subtract elapsed time from the remaining time and stop timing
    long now = System.currentTimeMillis();
    remaining -= (now - lastUpdate);
    timer.stop(); // Stop the timer
    }

    // Update the displayed time. This method is called from actionPerformed()
    // which is itself invoked by the timer.
    void updateDisplay() {
    long now = System.currentTimeMillis(); // current time in ms
    long elapsed = now - lastUpdate; // ms elapsed since last update
    remaining -= elapsed; // adjust remaining time
    lastUpdate = now; // remember this update time

    // Convert remaining milliseconds to mm:ss format and display
    if (remaining < 0) remaining = 0;
    int minutes = (int)(remaining/60000);
    int seconds = (int)((remaining&#37;60000)/1000);
    label.setText(format.format(minutes) + ":" + format.format(seconds));

    // If we've completed the countdown beep and display new page
    if (remaining == 0) {
    // Stop updating now.
    timer.stop();
    // If we have an alarm sound clip, play it now.
    if (sound != null) sound.play();
    // If there is a newpage URL specified, make the browser
    // load that page now.
    String newpage = getParameter("newpage");
    if (newpage != null) {
    try {
    URL url = new URL(getDocumentBase(), newpage);
    getAppletContext().showDocument(url);
    }
    catch(MalformedURLException ex) { showStatus(ex.toString()); }
    }
    }
    }

    // This method implements the ActionListener interface.
    // It is invoked once a second by the Timer object
    // and updates the JLabel to display minutes and seconds remaining.
    public void actionPerformed(ActionEvent e) { updateDisplay(); }

    // The methods below implement the MouseListener interface. We use
    // two of them to pause the countdown when the mouse hovers over the timer.
    // Note that we also display a message in the statusline
    public void mouseEntered(MouseEvent e) {
    pause(); // pause countdown
    showStatus("Paused"); // display statusline message
    }
    public void mouseExited(MouseEvent e) {
    resume(); // resume countdown
    showStatus(""); // clear statusline
    }
    // These MouseListener methods are unused.
    public void mouseClicked(MouseEvent e) {}
    public void mousePressed(MouseEvent e) {}
    public void mouseReleased(MouseEvent e) {}
    }
    have a good one - Day I mean...

Similar Threads

  1. Replies: 0
    Last Post: 04-04-2008, 03:46 PM
  2. Making connect 4 in java
    By zoe in forum New To Java
    Replies: 1
    Last Post: 08-07-2007, 07:10 AM
  3. Making a Java web calendar
    By toby in forum Enterprise JavaBeans (EJB)
    Replies: 1
    Last Post: 08-07-2007, 07:05 AM
  4. Help with timer in java
    By barney in forum Advanced Java
    Replies: 1
    Last Post: 08-01-2007, 11:24 AM
  5. Problem with timer in java
    By paul in forum Advanced Java
    Replies: 3
    Last Post: 07-26-2007, 11:18 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •