- java.lang.Object
-
- javax.swing.AbstractSpinnerModel
-
- javax.swing.SpinnerListModel
-
- 实现的所有接口
-
Serializable
,SpinnerModel
public class SpinnerListModelextends AbstractSpinnerModelimplements Serializable
SpinnerModel
的简单实现,其值由数组或List
定义。 例如,要创建由一周中某些日期的名称数组定义的模型:String[] days = new DateFormatSymbols().getWeekdays(); SpinnerModel model = new SpinnerListModel(Arrays.asList(days).subList(1, 8));
此类仅存储对数组的引用或List
因此如果基础序列的元素发生更改,ChangeListeners
应用程序通过调用fireStateChanged
通知fireStateChanged
。该模型继承
ChangeListener
。 该ChangeListener
,就会通知每当该模型的value
或list
性质改变。- 从以下版本开始:
- 1.4
- 另请参见:
-
JSpinner
,SpinnerModel
,AbstractSpinnerModel
,SpinnerNumberModel
,SpinnerDateModel
, Serialized Form
-
-
字段汇总
-
声明的属性在类 javax.swing.AbstractSpinnerModel
listenerList
-
-
构造方法摘要
构造方法 构造器 描述 SpinnerListModel()
构造一个有效的空SpinnerListModel
。SpinnerListModel(Object[] values)
构造一个SpinnerModel
其值序列由指定的数组定义。SpinnerListModel(List<?> values)
构造SpinnerModel
其值序列由指定的List
定义。
-
方法摘要
所有方法 实例方法 具体的方法 变量和类型 方法 描述 List<?>
getList()
返回定义此模型序列的List
。Object
getNextValue()
返回基础序列的下一个合法值,如果value已经是最后一个元素,则返回null
。Object
getPreviousValue()
如果value已经是第一个元素,则返回基础序列的前一个元素或null
。Object
getValue()
返回序列的当前元素。void
setList(List<?> list)
更改定义此序列的列表,并将模型value
的索引重置为零。void
setValue(Object elt)
更改序列的当前元素并通知ChangeListeners
。-
声明方法的类 javax.swing.AbstractSpinnerModel
addChangeListener, fireStateChanged, getChangeListeners, getListeners, removeChangeListener
-
-
-
-
构造方法详细信息
-
SpinnerListModel
public SpinnerListModel(List<?> values)
构造一个SpinnerModel
其值序列由指定的List
定义。 模型的初始值( 当前元素 )将为values.get(0)
。 如果values
是null
或者大小为零,则抛出IllegalArugmentException
。- 参数
-
values
- 此模型所代表的序列 - 异常
-
IllegalArgumentException
- 如果values
是null
或零大小
-
SpinnerListModel
public SpinnerListModel(Object[] values)
构造一个SpinnerModel
其值序列由指定的数组定义。 该模型的初始值为values[0]
。 如果values
是null
或者长度为零,则抛出IllegalArgumentException
。- 参数
-
values
- 此模型表示的序列 - 异常
-
IllegalArgumentException
- 如果values
是null
或零长度
-
SpinnerListModel
public SpinnerListModel()
构造一个有效空SpinnerListModel
。 模型的列表将包含单个"empty"
字符串元素。
-
-
方法详细信息
-
getList
public List<?> getList()
返回定义此模型序列的List
。- 结果
-
list
属性的值 - 另请参见:
-
setList(java.util.List<?>)
-
setList
public void setList(List<?> list)
更改定义此序列的列表,并将模型value
的索引重置为零。 请注意,list
未复制,模型只存储对它的引用。如果
list
不等于当前列表,则此方法将触发ChangeEvent
。- 参数
-
list
- 此模型表示的序列 - 异常
-
IllegalArgumentException
- 如果list
是null
或者长度为零 - 另请参见:
-
getList()
-
getValue
public Object getValue()
返回序列的当前元素。- Specified by:
-
getValue
在界面SpinnerModel
- 结果
-
value
属性 - 另请参见:
-
SpinnerModel.getValue()
,setValue(java.lang.Object)
-
setValue
public void setValue(Object elt)
更改序列的当前元素并通知ChangeListeners
。 如果指定的值不等于基础序列的元素,则抛出IllegalArgumentException
。 在以下示例中,setValue
调用将导致抛出异常:String[] values = {"one", "two", "free", "four"}; SpinnerModel model = new SpinnerListModel(values); model.setValue("TWO");
- Specified by:
-
setValue
在界面SpinnerModel
- 参数
-
elt
- 将成为模型当前值的序列元素 - 异常
-
IllegalArgumentException
- 如果不允许指定的值 - 另请参见:
-
SpinnerModel.setValue(java.lang.Object)
,getValue()
-
getNextValue
public Object getNextValue()
返回基础序列的下一个合法值,如果值已经是最后一个元素,则返回null
。- Specified by:
-
getNextValue
在界面SpinnerModel
- 结果
- 如果值已经是最后一个元素,则基础序列的下一个合法值或
null
- 另请参见:
-
SpinnerModel.getNextValue()
,getPreviousValue()
-
getPreviousValue
public Object getPreviousValue()
返回基础序列的前一个元素,如果value已经是第一个元素,则返回null
。- Specified by:
-
getPreviousValue
接口SpinnerModel
- 结果
- 如果值已经是第一个元素,则基础序列的前一个元素或
null
- 另请参见:
-
SpinnerModel.getPreviousValue()
,getNextValue()
-
-