- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JSpinner
-
- すべての実装されたインタフェース:
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
プロパティを使用して変更できます。 一部の共通の型として、SpinnerListModel
、SpinnerNumberModel
、および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
- 関連項目:
SpinnerModel
,AbstractSpinnerModel
,SpinnerListModel
,SpinnerNumberModel
,SpinnerDateModel
,JFormattedTextField
-
-
ネストされたクラスのサマリー
ネストされたクラス 修飾子と型 クラス 説明 protected class
JSpinner.AccessibleJSpinner
AccessibleJSpinner
は、JSpinner
クラスのアクセシビリティ・サポートを実装しています。static class
JSpinner.DateEditor
モデルがSpinnerDateModel
であるJSpinner
のエディタです。static class
JSpinner.DefaultEditor
JFormattedTextField
を使用してモデルの現在の値の読取り専用ビューを表示する、より特殊なエディタの単純な基底クラスです。static class
JSpinner.ListEditor
モデルがSpinnerListModel
であるJSpinner
のエディタです。static class
JSpinner.NumberEditor
モデルがSpinnerNumberModel
であるJSpinner
のエディタです。-
クラス javax.swing.JComponentで宣言されたネストされたクラス/インタフェース
JComponent.AccessibleJComponent
-
クラス java.awt.Containerで宣言されたネストされたクラス/インタフェース
Container.AccessibleAWTContainer
-
クラス java.awt.Componentで宣言されたネストされたクラス/インタフェース
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
-
フィールドのサマリー
-
クラス javax.swing.JComponentで宣言されたフィールド
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
-
クラス java.awt.Componentで宣言されたフィールド
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
インタフェース java.awt.image.ImageObserverで宣言されたフィールド
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
-
コンストラクタのサマリー
コンストラクタ コンストラクタ 説明 JSpinner()
初期値が0で最小値または最大値の制限がないInteger SpinnerNumberModel
を持つスピナーを構築します。JSpinner(SpinnerModel model)
指定されたモデルのスピナーを構築します。
-
メソッドのサマリー
修飾子と型 メソッド 説明 void
addChangeListener(ChangeListener listener)
リスナーを、モデルへの変更が行われるたびに通知されるリストに追加します。void
commitEdit()
現在編集されている値をSpinnerModel
にコミットします。protected JComponent
createEditor(SpinnerModel model)
このメソッドは、シーケンスの現在の値を表示するJComponent
を作成するために、コンストラクタによって呼び出されます。protected void
fireStateChanged()
このJSpinner
をソースとするChangeEvent
を各ChangeListener
に送信します。AccessibleContext
getAccessibleContext()
JSpinner
のAccessibleContext
を取得します。ChangeListener[]
getChangeListeners()
addChangeListener()を使用してこのJSpinnerに追加されたすべてのChangeListener
の配列を返します。JComponent
getEditor()
モデルの値を表示し、変更もできるコンポーネントを返します。SpinnerModel
getModel()
このスピナーの値のシーケンスを定義するSpinnerModel
返します。Object
getNextValue()
getValue()
によって返されたオブジェクトの後にあるシーケンスのオブジェクトを返します。Object
getPreviousValue()
getValue()
によって返されたオブジェクトの前にあるシーケンスのオブジェクトを返します。SpinnerUI
getUI()
このコンポーネントを描画するルック・アンド・フィール (L&F)オブジェクトを返します。String
getUIClassID()
ルック・アンド・フィール (L&F)クラスの名前の構築に使用された接頭辞を返します。このクラスは、このコンポーネントを描画するのに使用されます。Object
getValue()
モデルの現在の値を返します。通常、この値はeditor
によって表示されます。void
removeChangeListener(ChangeListener listener)
このスピナーからChangeListener
を削除します。void
setEditor(JComponent editor)
SpinnerModel
の現在の値を表示するJComponent
を変更します。void
setModel(SpinnerModel model)
このスピナーの値を表すモデルを変更します。void
setUI(SpinnerUI ui)
このコンポーネントを描画するルック・アンド・フィール (L&F)オブジェクトを設定します。void
setValue(Object value)
モデルの現在の値を変更します。通常、この値はeditor
によって表示されます。void
updateUI()
現在のルック・アンド・フィールからの値を持つUIプロパティをリセットします。-
クラス javax.swing.JComponentで宣言されたメソッド
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, paramString, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
-
クラス java.awt.Containerで宣言されたメソッド
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
-
クラス java.awt.Componentで宣言されたメソッド
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
コンストラクタの詳細
-
JSpinner
public JSpinner(SpinnerModel model)
指定されたモデルのスピナーを構築します。 スピナーは、前/次ボタンのセットと、そのモデル用の適切なエディタを持ちます。- パラメータ:
model
- 新しいスピナーのモデル- 例外:
NullPointerException
- モデルがnull
の場合
-
JSpinner
public JSpinner()
初期値が0で最小値または最大値の制限がないInteger SpinnerNumberModel
を持つスピナーを構築します。
-
-
メソッドの詳細
-
getUI
public SpinnerUI getUI()
このコンポーネントを描画するルック・アンド・フィール (L&F)オブジェクトを返します。- オーバーライド:
- クラス
JComponent
のgetUI
- 戻り値:
- このコンポーネントをレンダリングする
SpinnerUI
オブジェクト
-
setUI
public void setUI(SpinnerUI ui)
このコンポーネントを描画するルック・アンド・フィール (L&F)オブジェクトを設定します。- パラメータ:
ui
-SpinnerUI
L&Fオブジェクト- 関連項目:
UIDefaults.getUI(javax.swing.JComponent)
-
getUIClassID
@BeanProperty(bound=false) public String getUIClassID()
ルック・アンド・フィール (L&F)クラスの名前の構築に使用された接頭辞を返します。このクラスは、このコンポーネントを描画するのに使用されます。- オーバーライド:
getUIClassID
、クラス:JComponent
- 戻り値:
- SpinnerUIの文字列
- 関連項目:
JComponent.getUIClassID()
,UIDefaults.getUI(javax.swing.JComponent)
-
updateUI
public void updateUI()
現在のルック・アンド・フィールからの値を持つUIプロパティをリセットします。- オーバーライド:
updateUI
、クラス:JComponent
- 関連項目:
UIManager.getUI(javax.swing.JComponent)
-
createEditor
protected JComponent createEditor(SpinnerModel model)
このメソッドは、シーケンスの現在の値を表示するJComponent
を作成するために、コンストラクタによって呼び出されます。 また、エディタを使用することにより、ユーザーはシーケンスの要素を直接入力することが可能になります。 エディタはmodel
のChangeEvents
を待機し、表示する値がモデルの値と同期するように維持する必要があります。サブクラスは、このメソッドをオーバーライドして、新しい
SpinnerModel
クラスのサポートを追加します。 また、ここで作成されたエディタを、単にsetEditor
メソッドと置き換えることもできます。 モデル型からエディタへのデフォルトのマッピングは、次のとおりです。-
SpinnerNumberModel => JSpinner.NumberEditor
-
SpinnerDateModel => JSpinner.DateEditor
-
SpinnerListModel => JSpinner.ListEditor
- その他すべて =>
JSpinner.DefaultEditor
- パラメータ:
model
- getModelの値- 戻り値:
- シーケンスの現在の値を表示するコンポーネント
- 関連項目:
getModel()
,setEditor(javax.swing.JComponent)
-
-
setModel
@BeanProperty(visualUpdate=true, description="Model that represents the value of this spinner.") public void setModel(SpinnerModel model)
このスピナーの値を表すモデルを変更します。 エディタのプロパティが明示的に設定されていない場合、エディタのプロパティは"model"
PropertyChangeEvent
がトリガーされたあとで暗黙の内に設定されます。 エディタのプロパティは、次のようにcreateEditor
によって返された値に設定されます。setEditor(createEditor(model));
- パラメータ:
model
- 新しいSpinnerModel
- 例外:
IllegalArgumentException
- モデルがnull
の場合- 関連項目:
getModel()
,getEditor()
,setEditor(javax.swing.JComponent)
-
getModel
public SpinnerModel getModel()
このスピナーの値のシーケンスを定義するSpinnerModel
返します。- 戻り値:
- モデルのプロパティの値
- 関連項目:
setModel(javax.swing.SpinnerModel)
-
getValue
public Object getValue()
モデルの現在の値を返します。通常、この値はeditor
によって表示されます。 ユーザーがeditor
によって表示された値を変更すると、model
の値とeditor
の値が異なってしまう可能性があります。この問題の対処方法の例については、クラス・レベルのjavadocを参照してください。このメソッドは単に
model
に委譲されます。 これは次と同等です。getModel().getValue()
- 戻り値:
- モデルの現在の値
- 関連項目:
setValue(java.lang.Object)
,SpinnerModel.getValue()
-
setValue
public void setValue(Object value)
モデルの現在の値を変更します。通常、この値はeditor
によって表示されます。SpinnerModel
の実装が指定された値をサポートしていない場合は、IllegalArgumentException
がスローされます。このメソッドは単に
model
に委譲されます。 これは次と同等です。getModel().setValue(value)
- パラメータ:
value
- スピナーの新しい価値- 例外:
IllegalArgumentException
-value
が正当でない場合- 関連項目:
getValue()
,SpinnerModel.setValue(java.lang.Object)
-
getNextValue
@BeanProperty(bound=false) public Object getNextValue()
getValue()
によって返されたオブジェクトの後にあるシーケンスのオブジェクトを返します。 シーケンスの終点に到達した場合、null
を返します。 このメソッドを呼び出しても、value
には影響しません。このメソッドは単に
model
に委譲されます。 これは次と同等です。getModel().getNextValue()
- 戻り値:
- 次の正当な値、またはそれが存在しない場合は
null
- 関連項目:
getValue()
,getPreviousValue()
,SpinnerModel.getNextValue()
-
addChangeListener
public void addChangeListener(ChangeListener listener)
リスナーを、モデルへの変更が行われるたびに通知されるリストに追加します。ChangeListeners
に送信されたChangeEvents
のソースはこのJSpinner
です。 モデルの置換えはJSpinnerに直接追加されたリスナーには影響を与えません。 アプリケーションは、リスナーをモデルに直接追加できます。 この場合は、イベントのソースはSpinnerModel
となります。- パラメータ:
listener
- 追加するChangeListener
- 関連項目:
removeChangeListener(javax.swing.event.ChangeListener)
,getModel()
-
removeChangeListener
public void removeChangeListener(ChangeListener listener)
このスピナーからChangeListener
を削除します。- パラメータ:
listener
- 削除するChangeListener
- 関連項目:
fireStateChanged()
,addChangeListener(javax.swing.event.ChangeListener)
-
getChangeListeners
@BeanProperty(bound=false) public ChangeListener[] getChangeListeners()
addChangeListener()を使用してこのJSpinnerに追加されたすべてのChangeListener
の配列を返します。- 戻り値:
- 追加されたすべての
ChangeListener
。リスナーが追加されていない場合は空の配列 - 導入されたバージョン:
- 1.4
-
fireStateChanged
protected void fireStateChanged()
このJSpinner
をソースとするChangeEvent
を各ChangeListener
に送信します。ChangeListener
がスピナーに追加されると、ChangeEvent
がモデルから受信されるたびにこのメソッドが呼び出されます。
-
getPreviousValue
@BeanProperty(bound=false) public Object getPreviousValue()
getValue()
によって返されたオブジェクトの前にあるシーケンスのオブジェクトを返します。 シーケンスの終点に到達した場合、null
を返します。 このメソッドを呼び出しても、value
には影響しません。このメソッドは単に
model
に委譲されます。 これは次と同等です。getModel().getPreviousValue()
- 戻り値:
- 直前の正当な値、またはそれが存在しない場合は
null
- 関連項目:
getValue()
,getNextValue()
,SpinnerModel.getPreviousValue()
-
setEditor
@BeanProperty(visualUpdate=true, description="JComponent that displays the current value of the model") public void setEditor(JComponent editor)
SpinnerModel
の現在の値を表示するJComponent
を変更します。 このメソッドにより、古いエディタがモデルから切り離され、新しいエディタが接続されます。 これは、古いエディタのChangeListener
をモデルまたはスピナー自体から削除して、新しいエディタの変更リスナーを追加することを意味します。- パラメータ:
editor
- 新しいエディタ- 例外:
IllegalArgumentException
- エディタがnull
である場合- 関連項目:
getEditor()
,createEditor(javax.swing.SpinnerModel)
,getModel()
-
getEditor
public JComponent getEditor()
モデルの値を表示し、変更もできるコンポーネントを返します。- 戻り値:
- モデルの値を表示し、変更もできるコンポーネント
- 関連項目:
setEditor(javax.swing.JComponent)
,createEditor(javax.swing.SpinnerModel)
-
commitEdit
public void commitEdit() throws ParseException
現在編集されている値をSpinnerModel
にコミットします。エディタが
DefaultEditor
のインスタンスの場合、エディタに転送されたときは呼出しを行い、それ以外のときは何も処理を行いません。- 例外:
ParseException
- 現在編集されている値が確定できなかった場合。
-
getAccessibleContext
@BeanProperty(bound=false) public AccessibleContext getAccessibleContext()
JSpinner
のAccessibleContext
を取得します。- 定義:
getAccessibleContext
、インタフェース:Accessible
- オーバーライド:
getAccessibleContext
、クラス:Component
- 戻り値:
JSpinner
のAccessibleContext
- 導入されたバージョン:
- 1.5
-
-