JavaTM 2
Platform
Std. Ed. v1.4.0

javax.swing
クラス SpinnerListModel

java.lang.Object
  |
  +--javax.swing.AbstractSpinnerModel
        |
        +--javax.swing.SpinnerListModel
すべての実装インタフェース:
Serializable, SpinnerModel

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 に変更が通知されます。

導入されたバージョン:
1.4
関連項目:
JSpinner, SpinnerModel, AbstractSpinnerModel, SpinnerNumberModel, SpinnerDateModel

フィールドの概要
 
クラス javax.swing.AbstractSpinnerModel から継承したフィールド
listenerList
 
コンストラクタの概要
SpinnerListModel()
          事実上空の SpinnerListModel を構築します。
SpinnerListModel(List values)
          指定された List で値のシーケンスを定義する SpinnerModel を構築します。
SpinnerListModel(Object[] values)
          指定された配列で値のシーケンスを定義する SpinnerModel を構築します。
 
メソッドの概要
 List getList()
          このモデルのシーケンスを定義する List を返します。
 Object getNextValue()
          基本となるシーケンスの正当な次の値を返します。
 Object getPreviousValue()
          基本となるシーケンスの前の要素を返します。
 Object getValue()
          シーケンスの現在の要素を返します。
 void setList(List list)
          このシーケンスを定義するリストを変更し、モデルの value のインデックスを 0 にリセットします。
 void setValue(Object elt)
          シーケンスの現在の要素を変更し、ChangeListeners に通知します。
 
クラス javax.swing.AbstractSpinnerModel から継承したメソッド
addChangeListener, fireStateChanged, getChangeListeners, getListeners, removeChangeListener
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

SpinnerListModel

public SpinnerListModel(List values)
指定された List で値のシーケンスを定義する SpinnerModel を構築します。モデルの初期値 (「現在の要素」) は values.get(0) です。valuesnull、あるいはサイズが 0 の場合、IllegalArugmentException がスローされます。

パラメータ:
values - このモデルが表すシーケンス
例外:
IllegalArugmentException - valuesnull、あるいはサイズが 0 の場合

SpinnerListModel

public SpinnerListModel(Object[] values)
指定された配列で値のシーケンスを定義する SpinnerModel を構築します。モデルの初期値は values[0] です。valuesnull、あるいはサイズが 0 の場合、IllegalArugmentException がスローされます。

パラメータ:
values - このモデルが表すシーケンス
例外:
IllegalArugmentException - valuesnull、あるいは長さが 0 の場合

SpinnerListModel

public SpinnerListModel()
事実上空の SpinnerListModel を構築します。モデルのリストには、1 つの「空」の文字列要素が含まれます。

メソッドの詳細

getList

public List getList()
このモデルのシーケンスを定義する List を返します。

戻り値:
list プロパティの値
関連項目:
setList(java.util.List)

setList

public void setList(List list)
このシーケンスを定義するリストを変更し、モデルの value のインデックスを 0 にリセットします。list はコピーされません。モデルは list への参照を格納するだけです。

list が現在のリストと異なる場合、このメソッドは ChangeEvent をトリガします。

パラメータ:
list - このモデルが表すシーケンス
例外:
IllegalArgumentException - listnull、あるいは長さが 0 の場合
関連項目:
getList()

getValue

public Object getValue()
シーケンスの現在の要素を返します。

定義:
インタフェース SpinnerModel 内の getValue
戻り値:
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");

定義:
インタフェース SpinnerModel 内の setValue
パラメータ:
elt - モデルの現在の値となるシーケンスの要素
例外:
IllegalArgumentException - 指定された値が正当でない場合
関連項目:
SpinnerModel.setValue(java.lang.Object), getValue()

getNextValue

public Object getNextValue()
基本となるシーケンスの正当な次の値を返します。値がすでに最後の要素の場合は null を返します。

定義:
インタフェース SpinnerModel 内の getNextValue
戻り値:
基本となるシーケンスの正当な次の値。値がすでに最後の要素の場合は null
関連項目:
SpinnerModel.getNextValue(), getPreviousValue()

getPreviousValue

public Object getPreviousValue()
基本となるシーケンスの前の要素を返します。値がすでに先頭の要素の場合は null を返します。

定義:
インタフェース SpinnerModel 内の getPreviousValue
戻り値:
基本となるシーケンスの前の要素。値がすでに先頭の要素の場合は null
関連項目:
SpinnerModel.getPreviousValue(), getNextValue()

JavaTM 2
Platform
Std. Ed. v1.4.0

バグの報告と機能のリクエスト
これ以外の API リファレンスおよび開発者用ドキュメントについては、 Java 2 SDK SE 開発者用ドキュメントを参照してください。 開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、 およびコード実例が含まれています。

Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.