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
ConstructorDescription构造一个有效空的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
- 参见:
-