public class SpinnerListModel extends AbstractSpinnerModel implements Serializable
List
によって値を定義するSpinnerModel
の単純な実装です。たとえば、曜日の配列で定義するモデルを作成するには、次のように記述します。
String[] days = new DateFormatSymbols().getWeekdays(); SpinnerModel model = new SpinnerListModel(Arrays.asList(days).subList(1, 8));このクラスは、配列または
List
への参照を格納するだけです。そのため、基本となるシーケンスの要素が変更された場合は、アプリケーション側でfireStateChanged
を呼び出してChangeListeners
に変更を通知します。
このモデルはChangeListener
を継承します。モデルのvalue
プロパティまたはlist
プロパティが変更されたときには、ChangeListener
に変更が通知されます。
JSpinner
, SpinnerModel
, AbstractSpinnerModel
, SpinnerNumberModel
, SpinnerDateModel
listenerList
コンストラクタと説明 |
---|
SpinnerListModel()
事実上空の
SpinnerListModel を構築します。 |
SpinnerListModel(List<?> values)
指定された
List で値のシーケンスを定義するSpinnerModel を構築します。 |
SpinnerListModel(Object[] values)
指定された配列で値のシーケンスを定義する
SpinnerModel を構築します。 |
修飾子と型 | メソッドと説明 |
---|---|
List<?> |
getList()
このモデルのシーケンスを定義する
List を返します。 |
Object |
getNextValue()
基本となるシーケンスの次の正当な値を返します。値がすでに最後の要素の場合は
null を返します。 |
Object |
getPreviousValue()
基本となるシーケンスの前の要素を返します。値がすでに最初の要素の場合は
null を返します。 |
Object |
getValue()
シーケンスの現在の要素を返します。
|
void |
setList(List<?> list)
このシーケンスを定義するリストを変更し、モデルの
value のインデックスを0にリセットします。 |
void |
setValue(Object elt)
シーケンスの現在の要素を変更し、
ChangeListeners に通知します。 |
addChangeListener, fireStateChanged, getChangeListeners, getListeners, removeChangeListener
public SpinnerListModel(List<?> values)
List
で値のシーケンスを定義するSpinnerModel
を構築します。モデルの初期値(現在の要素)はvalues.get(0)
です。values
がnull
、あるいはサイズが0の場合、IllegalArugmentException
がスローされます。values
- このモデルが表すシーケンスIllegalArgumentException
- values
がnull
またはサイズが0の場合public SpinnerListModel(Object[] values)
SpinnerModel
を構築します。モデルの初期値はvalues[0]
です。values
がnull
、あるいは長さが0の場合、IllegalArgumentException
がスローされます。values
- このモデルが表すシーケンスIllegalArgumentException
- values
がnull
または長さが0の場合。public SpinnerListModel()
SpinnerListModel
を構築します。モデルのリストには、1つの「空」
の文字列要素が含まれます。public List<?> getList()
List
を返します。list
プロパティの値setList(java.util.List<?>)
public void setList(List<?> list)
value
のインデックスを0にリセットします。list
はコピーされません。モデルはそれへの参照を格納するだけです。
list
が現在のリストと異なる場合、このメソッドはChangeEvent
をトリガーします。
list
- このモデルが表すシーケンスIllegalArgumentException
- list
がnull
または長さが0の場合。getList()
public Object getValue()
getValue
、インタフェース: SpinnerModel
value
プロパティSpinnerModel.getValue()
, setValue(java.lang.Object)
public void setValue(Object elt)
ChangeListeners
に通知します。指定された値が基本となるシーケンスの要素と異なる場合、IllegalArgumentException
がスローされます。次の例では、setValue
呼出しによって、例外がスローされます。
String[] values = {"one", "two", "free", "four"}; SpinnerModel model = new SpinnerListModel(values); model.setValue("TWO");
setValue
、インタフェース: SpinnerModel
elt
- モデルの現在の値となるシーケンスの要素IllegalArgumentException
- 指定された値が正当でない場合SpinnerModel.setValue(java.lang.Object)
, getValue()
public Object getNextValue()
null
を返します。getNextValue
、インタフェース: SpinnerModel
null
SpinnerModel.getNextValue()
, getPreviousValue()
public Object getPreviousValue()
null
を返します。getPreviousValue
、インタフェース: SpinnerModel
null
SpinnerModel.getPreviousValue()
, getNextValue()
バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.