18

I'm using NetBeans 7.1 to code in Java. I have a JFrame where I have spinner with integer values on it, I want to know how to get the active value in the spinner, I mean, the one that the user picks when the program is running; to use it on another methods.

lopisan
  • 7,720
  • 3
  • 37
  • 45
Johnny Dahdah
  • 995
  • 5
  • 15
  • 21

3 Answers3

35

spinner.getValue() should do the trick. You can cast it to Integer, like

int value = (Integer) spinner.getValue();

Note from reggoodwin: You should also call spinner.commitEdit() prior to calling getValue() to ensure manually typed values with the editor are propagated to the model, otherwise you will only get the old value.

Hence, it should be something like below,

try {
    spinner.commitEdit();
} catch ( java.text.ParseException e ) { .. }
int value = (Integer) spinner.getValue();
Community
  • 1
  • 1
Adeel Ansari
  • 39,541
  • 12
  • 93
  • 133
  • 7
    You should also call spinner.commitEdit() prior to calling getValue() to ensure manually typed values with the editor are propagated to the model, otherwise you will only get the old value. There is an example in the JSpinner class javadocs. – reggoodwin Jan 14 '15 at 15:19
2
String value = getSpinner().getValue() + "";

Integer.parseInt(value)

My solution, this working for me...
Not work:

Integer.parseInt( getSpinner().getValue().toString()) //get object toString

I do not understand, but it works, I leave it in case anyone needs it.

M4rc05
  • 21
  • 2
0
    String spinner = "catch Value";
    Integer myint = (Integer) jSpinner1.getValue();
    spinner = myint.toString();
    jTextField1.setText(spinner);

This worked for me. Wanted to write the Integer value from jSpinner to a textfield.