TITLE:JSpinnerのモデルの値をループさせる
#navi(../)
RIGHT:Posted by [[terai]] at 2010-02-01
*JSpinnerのモデルで値が最大、最小を超えるとループするように設定します。 [#t324de89]

-&jnlp;
-&jar;
-&zip;

#screenshot

**サンプルコード [#ld341dbc]
#code{{
spinner.setModel(new SpinnerNumberModel(20, 0, 59, 1) {
  public Object getNextValue() {
    Object n = super.getNextValue();
    if(n==null) n = getMinimum();
    return n;
  }
  public Object getPreviousValue() {
    Object n = super.getPreviousValue();
    if(n==null) n = getMaximum();
    return n;
  }
});
}}

**解説 [#m44dfbfa]
上記のサンプルでは、各モデルのgetNextValue、getPreviousValueメソッドをオーバーライドすることでループするように設定しています。

**参考リンク [#w63c8b19]
- [[Creating Custom Spinner Models and Editors>http://java.sun.com/docs/books/tutorial/uiswing/components/spinner.html#model]]

**コメント [#d1f3740f]
#comment