How to add real-time date and time in JFrame
In this tutorial, we are going to see how to add real-time date and time in JFrame in Java. You can use a JLabel to display date/time in real-time, for this we will use javax.swing.Timer class which defines a regular interval to update the label and DateFormat instance to format the date value. The following example uses a time interval of half a second. This ensures that we are always up-to-date.
[st_adsense]
How to add real-time date and time in JFrame
import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.text.DateFormat; import java.util.Date; public class MyClock { public static void main(String[] args) { new MyClock(); } public MyClock() { EventQueue.invokeLater(new Runnable() { @Override public void run() { try { UIManager. setLookAndFeel( UIManager.getSystemLookAndFeelClassName() ); } catch (ClassNotFoundException ex) { } catch (InstantiationException ex) { } catch (IllegalAccessException ex) { } catch (UnsupportedLookAndFeelException ex) { } JFrame frame = new JFrame("Real time date/time"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setLayout(new BorderLayout()); frame.add(new MyPanel()); frame.pack(); frame.setLocationRelativeTo(null); frame.setVisible(true); } }); } public class MyPanel extends JPanel { private JLabel horloge; public MyPanel() { setLayout(new BorderLayout()); horloge = new JLabel(); horloge.setHorizontalAlignment(JLabel.CENTER); horloge.setFont( UIManager.getFont("Label.font").deriveFont(Font.BOLD, 50f) ); horloge.setText( DateFormat.getDateTimeInstance().format(new Date()) ); add(horloge); Timer t = new Timer(500, new ActionListener() { @Override public void actionPerformed(ActionEvent e) { horloge.setText( DateFormat.getDateTimeInstance().format(new Date()) ); } }); t.setRepeats(true); t.setCoalesce(true); t.setInitialDelay(0); t.start(); } } }
Output:
[st_adsense]