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(tm)用の長期間の格納サポートがjava.beans
パッケージに追加されています。XMLEncoder
を参照してください。
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 のエディタです。 |
JComponent.AccessibleJComponent
Container.AccessibleAWTContainer
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
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()
このコンポーネントを描画するLook & Feel (L&F)オブジェクトを返します。
|
String |
getUIClassID()
Look & Feel (L&F)クラスの名前の構築に使用された接頭辞を返します。このクラスは、このコンポーネントを描画するのに使用されます。
|
Object |
getValue()
モデルの現在の値を返します。通常、この値は
editor によって表示されます。 |
void |
removeChangeListener(ChangeListener listener)
このスピナーから
ChangeListener を削除します。 |
void |
setEditor(JComponent editor)
SpinnerModel の現在の値を表示するJComponent を変更します。 |
void |
setModel(SpinnerModel model)
このスピナーの値を表すモデルを変更します。
|
void |
setUI(SpinnerUI ui)
このコンポーネントを描画するLook & Feel (L&F)オブジェクトを設定します。
|
void |
setValue(Object value)
モデルの現在の値を変更します。通常、この値は
editor によって表示されます。 |
void |
updateUI()
現在のLook & Feelからの値を持つUIプロパティをリセットします。
|
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, 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
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
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, 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, getPeer, 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, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
public JSpinner(SpinnerModel model)
NullPointerException
- モデルがnull
の場合public JSpinner()
Integer SpinnerNumberModel
を持つスピナーを構築します。public SpinnerUI getUI()
SpinnerUI
オブジェクトpublic void setUI(SpinnerUI ui)
ui
- SpinnerUI
L&FオブジェクトUIDefaults.getUI(javax.swing.JComponent)
public String getUIClassID()
getUIClassID
、クラス: JComponent
JComponent.getUIClassID()
, UIDefaults.getUI(javax.swing.JComponent)
public void updateUI()
updateUI
、クラス: JComponent
UIManager.getUI(javax.swing.JComponent)
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)
public void setModel(SpinnerModel model)
"model"
PropertyChangeEvent
がトリガーされたあとで暗黙の内に設定されます。エディタのプロパティは、次のようにcreateEditor
によって返された値に設定されます。
setEditor(createEditor(model));
model
- 新しいSpinnerModel
IllegalArgumentException
- モデルがnull
の場合getModel()
, getEditor()
, setEditor(javax.swing.JComponent)
public SpinnerModel getModel()
SpinnerModel
返します。setModel(javax.swing.SpinnerModel)
public Object getValue()
editor
によって表示されます。ユーザーがeditor
によって表示された値を変更すると、model
の値とeditor
の値が異なってしまう可能性があります。この問題の対処方法の例については、クラス・レベルのjavadocを参照してください。
このメソッドは単にmodel
に委譲されます。これは次と同等です。
getModel().getValue()
public void setValue(Object value)
editor
によって表示されます。SpinnerModel
の実装が指定された値をサポートしていない場合は、IllegalArgumentException
がスローされます。
このメソッドは単にmodel
に委譲されます。これは次と同等です。
getModel().setValue(value)
IllegalArgumentException
- value
が正当でない場合getValue()
, SpinnerModel.setValue(java.lang.Object)
public Object getNextValue()
getValue()
によって返されたオブジェクトの後にあるシーケンスのオブジェクトを返します。シーケンスの終点に到達した場合、null
を返します。このメソッドを呼び出しても、value
には影響しません。
このメソッドは単にmodel
に委譲されます。これは次と同等です。
getModel().getNextValue()
null
getValue()
, getPreviousValue()
, SpinnerModel.getNextValue()
public void addChangeListener(ChangeListener listener)
ChangeListeners
に送信されたChangeEvents
のソースはこのJSpinner
です。モデルの置換えはJSpinnerに直接追加されたリスナーには影響を与えません。アプリケーションは、リスナーをモデルに直接追加できます。この場合は、イベントのソースはSpinnerModel
となります。listener
- 追加するChangeListener
removeChangeListener(javax.swing.event.ChangeListener)
, getModel()
public void removeChangeListener(ChangeListener listener)
ChangeListener
を削除します。listener
- 削除するChangeListener
fireStateChanged()
, addChangeListener(javax.swing.event.ChangeListener)
public ChangeListener[] getChangeListeners()
ChangeListener
の配列を返します。ChangeListener
。リスナーが追加されていない場合は空の配列protected void fireStateChanged()
JSpinner
をソースとするChangeEvent
を各ChangeListener
に送信します。ChangeListener
がスピナーに追加されている場合、モデルからChangeEvent
を受け取るたびに、このメソッドが呼び出されます。public Object getPreviousValue()
getValue()
によって返されたオブジェクトの前にあるシーケンスのオブジェクトを返します。シーケンスの終点に到達した場合、null
を返します。このメソッドを呼び出しても、value
には影響しません。
このメソッドは単にmodel
に委譲されます。これは次と同等です。
getModel().getPreviousValue()
null
getValue()
, getNextValue()
, SpinnerModel.getPreviousValue()
public void setEditor(JComponent editor)
SpinnerModel
の現在の値を表示するJComponent
を変更します。このメソッドにより、古いエディタがモデルから切り離され、新しいエディタが接続されます。これは、古いエディタのChangeListener
をモデルまたはスピナー自体から削除して、新しいエディタの変更リスナーを追加することを意味します。editor
- 新しいエディタIllegalArgumentException
- エディタがnull
である場合getEditor()
, createEditor(javax.swing.SpinnerModel)
, getModel()
public JComponent getEditor()
setEditor(javax.swing.JComponent)
, createEditor(javax.swing.SpinnerModel)
public void commitEdit() throws ParseException
SpinnerModel
にコミットします。
エディタがDefaultEditor
のインスタンスの場合、エディタに転送されたときは呼出しを行い、それ以外のときは何も処理を行いません。
ParseException
- 現在編集されている値が確定できなかった場合。public AccessibleContext getAccessibleContext()
JSpinner
のAccessibleContext
を取得します。getAccessibleContext
、インタフェース: Accessible
getAccessibleContext
、クラス: Component
JSpinner
のAccessibleContext
バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.