2011-12-28 113 views
1

我想製作一個複雜的計算器,用戶必須從jSpinner中選擇一個介於1和12之間的值。你能告訴我如何將jSpinner的最小值設置爲1,最大值設置爲12?自定義jSpinner?

另外,如何檢查jSpinner中選擇哪個項目?

我使用NetBeans 7.0.1

+3

你可以在教程中找到這些和其他問題的答案:[JSpinner教程](http://docs.oracle.com/javase/tutorial/uiswing/components/spinner.html) – 2011-12-28 17:39:40

回答

2

與1的12

SpinnerModel model = new SpinnerNumberModel(6, //initial value 
           1, //minimum value 
           12, //maximum value 
           1); // increment by 
spinner.setModel(model); 

與最小值和最大值的微調來獲取值使用:

int n = Integer.parseInt(spinner.getValue().toString()); 
+0

非常感謝。 – Bugster 2011-12-28 18:01:01

+0

爲什麼要將Integer值轉換爲String,然後用'Integer.parseInt'解析?這看起來非常浪費。爲什麼不把它轉換爲Integer並在其上調用'intValue()'? – 2011-12-28 18:06:48

+2

@HovercraftFullOfEels,該方法可能是因爲getValue()返回Object類型。但在這種情況下,使用SpinnerNumberModel將其轉換爲Number,然後調用intValue()。 '((號碼)spinner.getValue())。的intValue()'。或者我們可以引用模型實例並調用'model.getNumber()。intValue()' – 2011-12-28 18:14:19