Creating an Hour JSpinner Component
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.GregorianCalendar;
import javax.swing.JFormattedTextField;
import javax.swing.JSpinner;
import javax.swing.SpinnerDateModel;
import javax.swing.text.DateFormatter;
import javax.swing.text.DefaultFormatterFactory;
public class Main {
public static void main(String[] argv) throws Exception {
Calendar calendar = new GregorianCalendar();
calendar.set(Calendar.HOUR_OF_DAY, 13); // 1pm
SpinnerDateModel dateModel = new SpinnerDateModel(calendar.getTime(), null,
null, Calendar.HOUR_OF_DAY);
JSpinner spinner = new JSpinner(dateModel);
JFormattedTextField tf = ((JSpinner.DefaultEditor) spinner.getEditor()).getTextField();
DefaultFormatterFactory factory = (DefaultFormatterFactory) tf.getFormatterFactory();
DateFormatter formatter = (DateFormatter) factory.getDefaultFormatter();
// Change the date format to only show the hours
formatter.setFormat(new SimpleDateFormat("hh:00 a"));
//formatter.setFormat(new SimpleDateFormat("HH:00 a"));
}
}
Related examples in the same category