Limiting the Values in a Number JSpinner Component

In this section you will learn how to create a Number JSpinner that can take values up to certain maximum limit.

Limiting the Values in a Number JSpinner Component

In this section you will learn how to create a Number JSpinner that can take values up to certain maximum limit.

Limiting the Values in a Number JSpinner Component

Limiting the Values in a Number JSpinner Component

     

In this section you will learn how to create a Number JSpinner that can take values up to certain maximum limit. You can even set the minimum value of the JSpinner component.

In this program, you will see the code for JSpinner component that holds the numeric value up to certain maximum limit. Following program has used some methods and APIs are explained as follows:

SpinnerModel:
This is the Interface of the javax.swing.*; package which is implemented by the SpinnerNumberModel class i.e. used to sequence of numbers it's constructor specifies the lower and upper bound for JSpinner contained values.

SpinnerNumberModel():
This is the constructor of the SpinnerNumberModel class which sets the lower and upper bound for the JSpinner contained values. The constructor takes four argument as follows:

  • First is the default value of JSpinner component.
  • Second is the lower bound of JSpinner component.
  • Third is the upper bound of JSpinner component.
  • Fourth is the steps to increase and decrease the JSpinner contained value by the specified number.

Here is the code of the program:

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

public class LimitValueSpinner{
  public static void main(String[] args){
  JFrame frame = new JFrame("Limiting value for a JSpinner");
  SpinnerModel sm = new SpinnerNumberModel(0, -501002);
  JSpinner spinner = new JSpinner(sm);
  JPanel panel = new JPanel();
  panel.add(spinner);
  frame.add(panel, BorderLayout.NORTH);
  frame.setSize(400400);
  frame.setVisible(true);
  frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  }
}

Download this example.