HOW TO UPDATE JAVA TIMER EVERY SECOND?

Allen Scott

Total Post:46

Points:324
Posted by  Allen Scott
Swing  Date  Time  Timer 
 1117  View(s)
Ratings:
Rate this:
I want to grab the current date and time from the system which i can do with this code:

private void GetCurrentDateTimeActionPerformed(java.awt.event.ActionEvent evt)

{                                                  

     DateFormat dateandtime = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");

     Date date = new Date();

     CurrentDateTime.setText(dateandtime.format(date));

}


Doing this is fine as it will grab he current date nad time no problem, however it is not dynamic as the time will not update unless the button is pressed again. So I was wondering how I could make this button more dynamic by updating the function every second to refresh the time.

  1. Ankita Pandey

    Post:183

    Points:1285
    Re: How to update Java timer every second?

    You can use an executor to update that periodically. Something like this:

    ScheduledExecutorService e= Executors.newSingleThreadScheduledExecutor();
    e.scheduleAtFixedRate(new Runnable() {
      @Override
      public void run() {
        SwingUtilities.invokeLater(new Runnable() {
           DateFormat dateandtime = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
           Date date = new Date();
           CurrentDateTime.setText(dateandtime.format(date));
        });
      }
    }, 0, 1, TimeUnit.SECONDS);

Answer

NEWSLETTER

Enter your email address here always to be updated. We promise not to spam!