モジュール java.desktop
パッケージ 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, 「直列化されたフォーム」
    • コンストラクタの詳細

      • SpinnerListModel

        public SpinnerListModel​(List<?> values)
        指定されたListで値のシーケンスを定義するSpinnerModelを構築します。 モデルの初期値(現在の要素)はvalues.get(0)です。 valuesnull、あるいはサイズが0の場合、IllegalArugmentExceptionがスローされます。
        パラメータ:
        values - このモデルが表すシーケンス
        例外:
        IllegalArgumentException - valuesnullまたはサイズが0の場合
      • SpinnerListModel

        public SpinnerListModel​(Object[] values)
        指定された配列で値のシーケンスを定義するSpinnerModelを構築します。 モデルの初期値はvalues[0]です。 valuesnull、あるいは長さが0の場合、IllegalArgumentExceptionがスローされます。
        パラメータ:
        values - このモデルが表すシーケンス
        例外:
        IllegalArgumentException - 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が現在のリストと異なる場合、このメソッドはChangeEventをトリガーします。

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

        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()
      • getNextValue

        public Object getNextValue​()
        基本となるシーケンスの次の正当な値を返します。値がすでに最後の要素の場合はnullを返します。
        定義:
        getNextValue、インタフェース: SpinnerModel
        戻り値:
        配下のシーケンスの次の正当な値、または値がすでに最後の要素である場合はnull
        関連項目:
        SpinnerModel.getNextValue(), getPreviousValue()
      • getPreviousValue

        public Object getPreviousValue​()
        基本となるシーケンスの前の要素を返します。値がすでに最初の要素の場合はnullを返します。
        定義:
        getPreviousValue、インタフェース: SpinnerModel
        戻り値:
        配下のシーケンスの前の要素、または値がすでに先頭の要素である場合はnull
        関連項目:
        SpinnerModel.getPreviousValue(), getNextValue()