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 以降、すべての JavaBeansTM 用の長期間の格納サポートが 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
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
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
、クラス: JComponent
JSpinner
の AccessibleContext
バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.