java.lang.Object
javax.swing.AbstractSpinnerModel
javax.swing.SpinnerListModel
- 所有已实现的接口:
-
Serializable,SpinnerModel
一个简单的
SpinnerModel的实现,其值由数组或List定义。例如,要创建一个由一周中的日期名称数组定义的模型:
String[] days = new DateFormatSymbols().getWeekdays(); SpinnerModel model = new SpinnerListModel(Arrays.asList(days).subList(1, 8));这个类只存储对数组或
List的引用,因此如果基础序列的元素发生更改,应用程序需要通过调用fireStateChanged来通知ChangeListeners。
此模型继承了一个ChangeListener。当模型的value或list属性更改时,将通知ChangeListener。
- 自版本:
- 1.4
- 参见:
-
Field Summary
Fields declared in class javax.swing.AbstractSpinnerModel
listenerList -
Constructor Summary
ConstructorsConstructorDescription构造一个有效空的SpinnerListModel。SpinnerListModel(Object[] values) 构造一个由指定数组定义值序列的SpinnerModel。SpinnerListModel(List<?> values) 构造一个由指定List定义值序列的SpinnerModel。 -
Method Summary
Methods declared in class javax.swing.AbstractSpinnerModel
addChangeListener, fireStateChanged, getChangeListeners, getListeners, removeChangeListener
-
Constructor Details
-
SpinnerListModel
构造一个由指定List定义值序列的SpinnerModel。模型的初始值(当前元素)将是values.get(0)。如果values为null或大小为零,则抛出IllegalArugmentException。- 参数:
-
values- 此模型表示的序列 - 抛出:
-
IllegalArgumentException- 如果values为null或大小为零
-
SpinnerListModel
构造一个由指定数组定义值序列的SpinnerModel。模型的初始值将是values[0]。如果values为null或长度为零,则抛出IllegalArgumentException。- 参数:
-
values- 此模型表示的序列 - 抛出:
-
IllegalArgumentException- 如果values为null或长度为零
-
SpinnerListModel
public SpinnerListModel()构造一个有效空的SpinnerListModel。模型的列表将包含一个单一的"empty"字符串元素。
-
-
Method Details
-
getList
返回定义此模型序列的List。- 返回:
-
list属性的值 - 参见:
-
setList
更改定义此序列的列表,并将模型的value索引重置为零。请注意,list没有被复制,模型只是存储对它的引用。如果
list与当前列表不相等,则此方法会触发一个ChangeEvent。- 参数:
-
list- 此模型表示的序列 - 抛出:
-
IllegalArgumentException- 如果list为null或长度为零 - 参见:
-
getValue
返回序列的当前元素。- 指定者:
-
getValue在接口SpinnerModel - 返回:
-
value属性的值 - 参见:
-
setValue
更改序列的当前元素并通知ChangeListeners。如果指定的值不等于基础序列的元素,则抛出IllegalArgumentException。在以下示例中,setValue调用将导致抛出异常:String[] values = {"one", "two", "free", "four"}; SpinnerModel model = new SpinnerListModel(values); model.setValue("TWO");- 指定者:
-
setValue在接口SpinnerModel - 参数:
-
elt- 将成为模型当前值的序列元素 - 抛出:
-
IllegalArgumentException- 如果指定的值不允许 - 参见:
-
getNextValue
返回基础序列的下一个合法值,如果值已经是最后一个元素,则返回null。- 指定者:
-
getNextValue在接口SpinnerModel - 返回:
-
基础序列的下一个合法值,如果值已经是最后一个元素,则返回
null - 参见:
-
getPreviousValue
返回基础序列的前一个元素,如果值已经是第一个元素,则返回null。- 指定者:
-
getPreviousValue在接口SpinnerModel - 返回:
-
基础序列的前一个元素,如果值已经是第一个元素,则返回
null - 参见:
-