Swing/CyclingSpinnerModel のバックアップ(No.3)
- バックアップ一覧
 - 差分 を表示
 - 現在との差分 を表示
 - 現在との差分 - Visual を表示
 - ソース を表示
 - Swing/CyclingSpinnerModel へ行く。
  
- 1 (2010-02-01 (月) 01:53:39)
 - 2 (2012-08-11 (土) 21:01:12)
 - 3 (2013-01-02 (水) 14:32:49)
 - 4 (2015-01-01 (木) 21:39:39)
 - 5 (2016-05-06 (金) 15:48:18)
 - 6 (2017-04-04 (火) 14:17:08)
 - 7 (2017-08-03 (木) 15:43:40)
 - 8 (2018-08-07 (火) 14:34:46)
 - 9 (2020-08-06 (木) 12:17:42)
 - 10 (2021-12-23 (木) 17:19:08)
 - 11 (2023-09-19 (火) 16:04:07)
 - 12 (2025-01-03 (金) 08:57:02)
 - 13 (2025-01-03 (金) 09:01:23)
 - 14 (2025-01-03 (金) 09:02:38)
 - 15 (2025-01-03 (金) 09:03:21)
 - 16 (2025-01-03 (金) 09:04:02)
 - 17 (2025-06-19 (木) 12:41:37)
 - 18 (2025-06-19 (木) 12:43:47)
 
 
TITLE:JSpinnerのモデルの値をループさせる
Usage: #tags(tags)Posted by aterai at 2010-02-01
JSpinnerのモデルの値をループさせる
JSpinnerのモデルで値が最大、最小を超えるとループするように設定します。
- &jnlp;
 - &jar;
 - &zip;
 
サンプルコード
spinner.setModel(new SpinnerNumberModel(20, 0, 59, 1) {
  @Override public Object getNextValue() {
    Object n = super.getNextValue();
    if(n==null) n = getMinimum();
    return n;
  }
  @Override public Object getPreviousValue() {
    Object n = super.getPreviousValue();
    if(n==null) n = getMaximum();
    return n;
  }
});
View in GitHub: Java, Kotlin解説
上記のサンプルでは、各モデルのgetNextValue、getPreviousValueメソッドをオーバーライドすることでループするように設定しています。
