A quick test of various spinners : Spinner « Swing JFC « Java

A quick test of various spinners

A quick test of various spinners
Java Swing, 2nd Edition
By Marc Loy, Robert Eckstein, Dave Wood, James Elliott, Brian Cole
ISBN: 0-596-00408-7
Publisher: O'Reilly 
// SwingSpinnerTest.java
//A quick test of various spinners.

import java.awt.Container;
import java.awt.GridLayout;
import java.util.List;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JSpinner;
import javax.swing.SpinnerDateModel;
import javax.swing.SpinnerListModel;
import javax.swing.SpinnerNumberModel;

public class SwingSpinnerTest extends JFrame {

  public SwingSpinnerTest() {
    super("JSpinner Test");
    setSize(300, 180);

    Container c = getContentPane();
    c.setLayout(new GridLayout(0, 2));

    c.add(new JLabel(" Basic Spinner"));
    c.add(new JSpinner());

    c.add(new JLabel(" Date Spinner"));
    c.add(new JSpinner(new SpinnerDateModel()));

    String weekdays[] = new String[] { "Sunday", "Monday", "Tuesday",
        "Wednesday", "Thursday", "Friday", "Saturday" };
    c.add(new JLabel(" List Spinner"));
    c.add(new JSpinner(new SpinnerListModel(weekdays)));

    c.add(new JLabel(" Number Spinner"));
    c.add(new JSpinner(new SpinnerNumberModel(0, 0, 100, 5)));

    c.add(new JLabel(" Rollover List Spinner"));
    c.add(new JSpinner(new RolloverSpinnerListModel(weekdays)));


  public static void main(String args[]) {
    new SwingSpinnerTest();

class RolloverSpinnerListModel extends SpinnerListModel {

  public RolloverSpinnerListModel(Object[] items) {

  public RolloverSpinnerListModel(List items) {

  public Object getNextValue() {
    Object nv = super.getNextValue();
    if (nv != null) {
      return nv;
    return getList().get(0);

  public Object getPreviousValue() {
    Object pv = super.getPreviousValue();
    if (pv != null) {
      return pv;
    List l = getList();
    return l.get(l.size() - 1);


Related examples in the same category

1.A program to test spinners.A program to test spinners.
2.An implementation of JSpinner with customized content--iconsAn implementation of JSpinner with customized content--icons
3.An example of JSpinner with a custom editorAn example of JSpinner with a custom editor
4.Create a spinnerCreate a spinner
5.Demonstrating the JSpinner ComponentDemonstrating the JSpinner Component
6.Demonstrate the Swing Spinner control
7.Spinner 2Spinner 2
8.Listening for Changes to the Value in a JSpinner Component
9.Creating a SpinnerListModel That Loops Through Its Values
10.Customizing the Editor in a JSpinner Component: Create a color spinner
11.Setting the Margin Space on a JSpinner Component
12.Limiting the Values in a Number JSpinner Component
13.Disabling Keyboard Editing in a JSpinner Component
14.Creating an Hour JSpinner Component
15.Creating a JSpinner Component: A number spinner:
16.A list spinner
17.A date spinner
18.A spinner of dates
19.Use an Icon Editor for use with the JSpinner component
20.Use images in tooltips
21.Number spinner
22.Date spinner
23.List based spinner
24.Java Spinner ComponentJava Spinner Component
25.Enhanced Spinner List Formatter
26.Enhanced Spinner List Model