2010-04-27 176 views
3

我正在開發一個Java桌面應用程序,並在Netbeans Swing GUI生成器的幫助下設計GUI。Java Swing - JSpinner中的問題

我想在我的應用中使用JSpinner。我已將其拖放到JPanel。現在,我想設置它的兩個屬性:

  • 首先,它應該在1範圍內顯示數字爲50。無論是小於1且不大於50.我怎麼能設置範圍更大?

  • 其次,當我試圖通過spinner.getValue()得到它的值時,它返回Object。由於我的微調數據類型是Integer,將Object降頻爲Integer還是有其他方法可以獲得該數值嗎?

回答

1

here的方式做到這一點在NetBeans:

  1. 創建JSpinner的,因爲你做了。
  2. 右鍵單擊它並選擇「自定義代碼」
  3. 將初始化設置爲具有SpinnerNumberModel的微調器。
+0

斷開的鏈接.... – 2012-04-25 14:28:32

6

創建一個SpinnerNumberModel,這應該可以解決您的所有問題。

SpinnerNumberModel model = 
new SpinnerNumberModel(int initialValue, int minValue, int maxValue, int step) 

欲瞭解更多信息,我建議你閱讀How to Use Spinners

0

火腿是你的第一個問題,正確的是(如何1的範圍限定於50)。對於第二個問題,是的,你可以簡單地施放它。大多數(如果不是全部的話)swing組件返回一個Object作爲它們的值(唯一值得注意的例外是文本域)。

1
int myInt = (Integer)mySpinner.getValue(); 

Java已經自動裝箱爲原始數據類型,所以上面的代碼會得到你的微調值作爲一個整數,只要您使用SpinnerNumberModel的由火腿的建議。