モジュール java.desktop
パッケージ javax.swing

クラスJSpinner

java.lang.Object
すべての実装されたインタフェース:
ImageObserver, MenuContainer, Serializable, Accessible

@JavaBean(defaultProperty="UI", description="A single line input field that lets the user select a number or an object value from an ordered set.") public class JSpinner extends JComponent implements Accessible
ユーザーが、順序付けられたシーケンスから数またはオブジェクトを選択できるようにする単一行の入力フィールドです。 通常、スピナーはシーケンスの要素間を移動するための小さな矢印ボタンのペアを提供します。 キーボードの上/下矢印キーでも要素間を自由に移動できます。 ユーザーがスピナーに直接(有効な)値を入力することもできます。 コンボボックスは類似の機能を提供しますが、重要なデータを覆い隠してしまうドロップ・ダウン・リストを必要としないため、スピナーの方が好まれる場合があります。

JSpinnerのシーケンスの値は、SpinnerModelによって定義されます。 modelは、コンストラクタの引数として指定し、modelプロパティを使用して変更できます。 一部の共通の型として、SpinnerListModelSpinnerNumberModel、およびSpinnerDateModelなどのSpinnerModelクラスが提供されます。

JSpinnerは、モデルの現在の要素またはを表示し、変更することもできるeditorと呼ばれる単一の子コンポーネントを持ちます。 エディタは、JSpinnerのコンストラクタによって作成され、editorプロパティによって変更できます。 JSpinnerのエディタは、ChangeEventを待機することにより、モデルとの同期を維持します。 ユーザーがeditorによって表示された値を変更すると、modelの値とeditorの値が異なってしまう可能性があります。 modelの値がエディタの値と同じかどうかを確認するには、commitEditメソッドを使用します。次に例を示します。

   try {
       spinner.commitEdit();
   }
   catch (ParseException pe) {
       // Edited value is invalid, spinner.getValue() will return
       // the last valid value, you could revert the spinner to show that:
       JComponent editor = spinner.getEditor();
       if (editor instanceof DefaultEditor) {
           ((DefaultEditor)editor).getTextField().setValue(spinner.getValue());
       }
       // reset the value to some known value:
       spinner.setValue(fallbackValue);
       // or treat the last valid value as the current, in which
       // case you don't need to do anything.
   }
   return spinner.getValue();
 

スピナーの使用方法の詳細と例については、『The Java Tutorial』の「How to Use Spinners」を参照してください。

警告: Swingはスレッドに対して安全ではありません。 詳細は、「Swing's Threading Policy」を参照してください。

警告: このクラスの直列化されたオブジェクトは、今後のSwingリリースと互換ではなくなる予定です。 現在の直列化のサポートは、短期間の格納や、同じバージョンのSwingを実行するアプリケーション間のRMIに適しています。 1.4では、すべてのJavaBeansの長期ストレージのサポートがjava.beansパッケージに追加されました。 XMLEncoderを参照してください。

導入されたバージョン:
1.4
関連項目: