JavaTM 2 Platform
Standard Ed. 5.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
Standard Ed. 5.0

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

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。