• title: JSpinnerのモデルの値をループさせる tags: [JSpinner, SpinnerNumberModel] author: aterai pubdate: 2010-02-01T01:53:39+09:00 description: JSpinnerのモデルで値が最大、最小を超えるとループするように設定します。

概要

JSpinnerのモデルで値が最大、最小を超えるとループするように設定します。

サンプルコード

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

解説

上記のサンプルでは、各モデルのgetNextValuegetPreviousValueメソッドをオーバーライドすることでループするように設定しています。

参考リンク

コメント