[an error occurred while processing this directive]

Show Time in JSpinner Component


In this section, you will learn about the creation of a JSpinner Component with time. Here, you will see time is increased or decreased with the help of JSpinner button. This program increases or decreases the time and change hour from 1 to 12. Following image shows you a JSpinner component with time:

Time in a Swing JSpinner Component

If you want to increase or decrease the minute then you have to put the cursor in the minute section of the JSpinner. Following are some methods and APIs:

This is the constructor of Date class. Date class is used by importing from java.util.*; package of java. This class is used to represent date and time according to Greenwich Mean Time (GMT) by default.

It is a constructor of SpinnerDateModel class. It creates a SpinnerDateModel and takes date and Calendar.HOUR_OF_DAY from a calendar. 

This is the Calendar class field which returns the hour of the specified time.

JSpinner.DateEditor(spinner, "hh:mm"):
This is the constructor of JSpinner.DateEditor class. It is used to formatting the date given in the JSpinner component. This constructor takes two argument in which, first is the JSpinner specification and second one is the format in "hh:mm" means first come hour and then the minute.

This is the method of the JSpinner class i.e. used to change that component which is helpful to show the current value of the SpinnerModel.

Here is the code of program:

import javax.swing.*;
import java.awt.*;
import java.util.*;

public class ShowTimeJSpinner{
  public static void main(String[] args) {
    ShowTimeJSpinner h = new ShowTimeJSpinner();

  public ShowTimeJSpinner(){
    JFrame frame = new JFrame("Creating JSpinner Component with time");
    Date date = new Date();
    SpinnerDateModel sm = new SpinnerDateModel(date, null, null, Calendar.HOUR_OF_DAY);
    JSpinner spinner = new JSpinner(sm);
    JSpinner.DateEditor de = new JSpinner.DateEditor(spinner, "hh:mm");

Download this program


[an error occurred while processing this directive]