public interface SpinnerModel
一个用于潜在无限序列对象值的模型。该模型类似于
ListModel
,但有一些重要区别:
- 序列元素的数量不一定是有限的。
- 该模型不支持对序列元素的索引随机访问。一次只能访问三个序列值:当前值、下一个值和上一个值。
- 可以设置当前序列元素。
SpinnerModel
有三个属性,只有第一个是可读/写的。
-
value
- 序列的当前元素。
-
nextValue
-
下一个元素,如果
value
是序列的最后一个元素,则为null。 -
previousValue
-
前一个元素,如果
value
是序列的第一个元素,则为null。
value
属性更改时,将通知ChangeListeners
。 SpinnerModel
可能选择在其他情况下通知ChangeListeners
。
- 自版本:
- 1.4
- 参见:
-
Method Summary
Modifier and TypeMethodDescriptionvoid
向模型的监听器列表中添加一个ChangeListener
。返回序列中在getValue()
返回的对象之后的对象。返回序列中在getValue()
返回的对象之前的对象。getValue()
序列的当前元素。void
从模型的监听器列表中移除一个ChangeListener
。void
更改模型的当前值,通常该值由JSpinner
的editor
部分显示。
-
Method Details
-
getValue
Object getValue()序列的当前元素。该元素通常由JSpinner
的editor
部分显示。- 返回:
- 当前微调器值。
- 参见:
-
setValue
更改模型的当前值,通常该值由JSpinner
的editor
部分显示。如果SpinnerModel
实现不支持指定的值,则会抛出IllegalArgumentException
。例如,用于数字的SpinnerModel
可能仅支持是十的整数倍的值。在这种情况下,model.setValue(new Number(11))
将抛出异常。- 参数:
-
value
- 微调器的新值 - 抛出:
-
IllegalArgumentException
- 如果不允许value
- 参见:
-
getNextValue
Object getNextValue()返回序列中在getValue()
返回的对象之后的对象。如果已到达序列的末尾,则返回null。调用此方法不会影响value
。- 返回:
- 下一个合法值,如果不存在则返回null
- 参见:
-
getPreviousValue
Object getPreviousValue()返回序列中在getValue()
返回的对象之前的对象。如果已到达序列的末尾,则返回null。调用此方法不会影响value
。- 返回:
- 前一个合法值,如果不存在则返回null
- 参见:
-
addChangeListener
向模型的监听器列表中添加一个ChangeListener
。当模型的value
更改时,必须通知ChangeListeners
。- 参数:
-
l
- 要添加的ChangeListener - 参见:
-
removeChangeListener
从模型的监听器列表中移除一个ChangeListener
。- 参数:
-
l
- 要移除的ChangeListener - 参见:
-