クラスJSpinner
- すべての実装されたインタフェース:
ImageObserver,MenuContainer,Serializable,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
- 関連項目:
-
ネストされたクラスのサマリー
ネストされたクラス修飾子と型クラス説明protected classAccessibleJSpinnerは、JSpinnerクラスのアクセシビリティ・サポートを実装しています。static classモデルがSpinnerDateModelであるJSpinnerのエディタ。static classJFormattedTextFieldを使用してモデルの現在の値の読取り専用ビューを表示する、より特殊なエディタの単純な基底クラス。static classモデルがSpinnerListModelであるJSpinnerのエディタ。static classモデルが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) 指定されたモデルのスピナーを構築します。 -
メソッドのサマリー
修飾子と型メソッド説明voidaddChangeListener(ChangeListener listener) リスナーを、モデルへの変更が行われるたびに通知されるリストに追加します。void現在編集されている値をSpinnerModelにコミットします。protected JComponentcreateEditor(SpinnerModel model) このメソッドは、シーケンスの現在の値を表示するJComponentを作成するために、コンストラクタによって呼び出されます。protected voidこのJSpinnerをソースとするChangeEventを各ChangeListenerに送信します。JSpinnerのAccessibleContextを取得します。addChangeListener()を使用してこのJSpinnerに追加されたすべてのChangeListenerの配列を返します。モデルの値を表示し、変更もできるコンポーネントを返します。getModel()このスピナーの値のシーケンスを定義するSpinnerModel返します。getValue()によって返されたオブジェクトの後にあるシーケンスのオブジェクトを返します。getValue()によって返されたオブジェクトの前にあるシーケンスのオブジェクトを返します。getUI()このコンポーネントを描画するルック・アンド・フィール (L&F)オブジェクトを返します。ルック・アンド・フィール (L&F)クラスの名前の構築に使用された接頭辞を返します。このクラスは、このコンポーネントを描画するのに使用されます。getValue()モデルの現在の値を返します。通常、この値はeditorによって表示されます。voidremoveChangeListener(ChangeListener listener) このスピナーからChangeListenerを削除します。voidsetEditor(JComponent editor) SpinnerModelの現在の値を表示するJComponentを変更します。voidsetModel(SpinnerModel model) このスピナーの値を表すモデルを変更します。voidこのコンポーネントを描画するルック・アンド・フィール (L&F)オブジェクトを設定します。voidモデルの現在の値を変更します。通常、この値はeditorによって表示されます。voidupdateUI()現在のルック・アンド・フィールからの値を持つ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-SpinnerUIL&Fオブジェクト- 関連項目:
-
getUIClassID
@BeanProperty(bound=false) public String getUIClassID()ルック・アンド・フィール (L&F)クラスの名前の構築に使用された接頭辞を返します。このクラスは、このコンポーネントを描画するのに使用されます。- オーバーライド:
getUIClassID、クラスJComponent- 戻り値:
- SpinnerUIの文字列
- 関連項目:
-
updateUI
-
createEditor
protected JComponent createEditor(SpinnerModel model) このメソッドは、シーケンスの現在の値を表示するJComponentを作成するために、コンストラクタによって呼び出されます。 また、エディタを使用することにより、ユーザーはシーケンスの要素を直接入力することが可能になります。 エディタはmodelのChangeEventsを待機し、表示する値がモデルの値と同期するように維持する必要があります。サブクラスは、このメソッドをオーバーライドして、新しい
SpinnerModelクラスのサポートを追加します。 また、ここで作成されたエディタを、単にsetEditorメソッドと置き換えることもできます。 モデル型からエディタへのデフォルトのマッピングは、次のとおりです。-
SpinnerNumberModel => JSpinner.NumberEditor -
SpinnerDateModel => JSpinner.DateEditor -
SpinnerListModel => JSpinner.ListEditor - その他すべて =>
JSpinner.DefaultEditor
- パラメータ:
model- getModelの値- 戻り値:
- シーケンスの現在の値を表示するコンポーネント
- 関連項目:
-
-
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
-
getValue
public Object getValue()モデルの現在の値を返します。通常、この値はeditorによって表示されます。 ユーザーがeditorによって表示された値を変更すると、modelの値とeditorの値が異なってしまう可能性があります。この問題の対処方法の例については、クラス・レベルのjavadocを参照してください。このメソッドは単に
modelに委譲されます。 これは次と同等です。getModel().getValue()
- 戻り値:
- モデルの現在の値
- 関連項目:
-
setValue
public void setValue(Object value) モデルの現在の値を変更します。通常、この値はeditorによって表示されます。SpinnerModelの実装が指定された値をサポートしていない場合は、IllegalArgumentExceptionがスローされます。このメソッドは単に
modelに委譲されます。 これは次と同等です。getModel().setValue(value)
- パラメータ:
value- スピナーの新しい価値- スロー:
IllegalArgumentException-valueが正当でない場合- 関連項目:
-
getNextValue
@BeanProperty(bound=false) public Object getNextValue()getValue()によって返されたオブジェクトの後にあるシーケンスのオブジェクトを返します。 シーケンスの終点に到達した場合、nullを返します。 このメソッドを呼び出しても、valueには影響しません。このメソッドは単に
modelに委譲されます。 これは次と同等です。getModel().getNextValue()
- 戻り値:
- 次の正当な値、またはそれが存在しない場合は
null - 関連項目:
-
addChangeListener
public void addChangeListener(ChangeListener listener) リスナーを、モデルへの変更が行われるたびに通知されるリストに追加します。ChangeListenersに送信されたChangeEventsのソースはこのJSpinnerです。 モデルの置換えはJSpinnerに直接追加されたリスナーには影響を与えません。 アプリケーションは、リスナーをモデルに直接追加できます。 この場合は、イベントのソースはSpinnerModelとなります。- パラメータ:
listener- 追加するChangeListener- 関連項目:
-
removeChangeListener
public void removeChangeListener(ChangeListener listener) このスピナーからChangeListenerを削除します。- パラメータ:
listener- 削除する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 - 関連項目:
-
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
-
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
-