public class JSpinner extends JComponent implements Accessible
一个JSpinner
序列的价值是由它的SpinnerModel
定义。的model
可以指定为构造函数的参数与model
属性更改。提供SpinnerModel
类常见类型:SpinnerListModel
,SpinnerNumberModel
,和SpinnerDateModel
。
有一个孩子一个JSpinner
组件的负责显示和潜在的修改模型的当前元素或价值,即editor
。编辑由JSpinner
的构造函数创建可与editor
属性更改。的JSpinner
编辑停留在与模型同步的听ChangeEvent
s。如果改变了用户的editor
为不同的editor
的model
值可能显示的值。确保model
作为编辑使用commitEdit
方法相同的值,如:
尝试{commitedit()飞旋;}赶上(ParseException PE){ {/ /编辑值无效,旋转。getvalue()将返回/最后一个有效值,你可以恢复旋转显示:geteditor() JComponent编辑=旋转。如果(编辑是defaulteditor){((defaulteditor)编辑)。gettextfield()。setValue(getvalue()飞旋;}将值重置为一些已知值:旋转。setValue(fallbackvalue);或将最后一个有效值作为当前的值,在你不需要做任何事情。}返回getvalue()飞旋;
对于使用转看How to Use Spinners信息和例子,java教程中的一部分。
警告: Swing是线程不安全的。更多信息见Swing's Threading Policy。
警告:序列化该类的对象与以后的Swing版本不兼容。当前的序列化支持适用于短期贮藏或RMI运行相同Swing版本的应用程序之间。为1.4,为所有JavaBeans™长期存储的支持已被添加到java.beans
包。请看XMLEncoder
。
SpinnerModel
,
AbstractSpinnerModel
,
SpinnerListModel
,
SpinnerNumberModel
,
SpinnerDateModel
,
JFormattedTextField
Modifier and Type | Class and Description |
---|---|
protected class |
JSpinner.AccessibleJSpinner
AccessibleJSpinner 实现的
JSpinner 类可访问性支持。
|
static class |
JSpinner.DateEditor
一
JSpinner 的模型是一个
SpinnerDateModel 编辑。
|
static class |
JSpinner.DefaultEditor
一个简单的基类为更专门的编辑显示模式的电流值与
JFormattedTextField 只读视图。
|
static class |
JSpinner.ListEditor
一
JSpinner 的模型是一个
SpinnerListModel 编辑。
|
static class |
JSpinner.NumberEditor
一
JSpinner 的模型是一个
SpinnerNumberModel 编辑。
|
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
Constructor and Description |
---|
JSpinner()
构建了一个旋转的
Integer SpinnerNumberModel 初始值0,没有最小或最大限度。
|
JSpinner(SpinnerModel model)
构建了一个给定的模型机。
|
Modifier and Type | Method and Description |
---|---|
void |
addChangeListener(ChangeListener listener)
向列表中添加一个侦听器,在每次更改模型时都会通知该列表。
|
void |
commitEdit()
提交当前编辑的价值的
SpinnerModel 。
|
protected JComponent |
createEditor(SpinnerModel model)
这种方法是通过构造函数创建显示该序列的当前值的
JComponent 。
|
protected void |
fireStateChanged()
发送一个
ChangeEvent ,其来源是
JSpinner ,每个
ChangeListener 。
|
AccessibleContext |
getAccessibleContext()
得到的
JSpinner 的
AccessibleContext
|
ChangeListener[] |
getChangeListeners()
返回所有的
ChangeListener s数组添加到这个jspinner与addchangelistener()。
|
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)
改变显示的电流值的
JComponent
SpinnerModel 。
|
void |
setModel(SpinnerModel model)
的变化,代表这飞旋的价值模型。
|
void |
setUI(SpinnerUI ui)
设置呈现此组件的外观和感觉(L和F)对象。
|
void |
setValue(Object value)
该模型改变电流值,通常这个值是由
editor 显示。
|
void |
updateUI()
重置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
初始值0,没有最小或最大限度。
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
-新的
SpinnerModel
null
IllegalArgumentException
getModel()
,
getEditor()
,
setEditor(javax.swing.JComponent)
public SpinnerModel getModel()
SpinnerModel
。
setModel(javax.swing.SpinnerModel)
public Object getValue()
editor
显示。如果改变了用户的
editor
为不同的
editor
的
model
值可能显示的值,请参阅级javadoc的例子说明了如何处理这。
此方法只需委托给model
。它相当于:
getmodel()。getvalue()
public void setValue(Object value)
editor
显示。如果
SpinnerModel
实现不支持指定的值,然后
IllegalArgumentException
抛出。
此方法只需委托给model
。它相当于:
getmodel() setValue(价值)。
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)
ChangeEvents
源传递到
ChangeListeners
将这
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
s数组添加到这个jspinner与addchangelistener()。
ChangeListener
s说如果没有听众已添加一个空数组
protected void fireStateChanged()
ChangeEvent
,其来源是
JSpinner
,每个
ChangeListener
。当一个
ChangeListener
已添加到旋转,这种方法称为一次
ChangeEvent
从模型获得。
public Object getPreviousValue()
getValue()
之前返回的对象。如果序列已到达终点然后返回
null
。调用此方法不影响
value
。
此方法只需委托给model
。它相当于:
getmodel()。getpreviousvalue()
null
如果不存在
getValue()
,
getNextValue()
,
SpinnerModel.getPreviousValue()
public void setEditor(JComponent editor)
JComponent
SpinnerModel
。这是该方法的责任断开老编辑从模型和连接新编辑。这可能意味着从模型或微调本身和添加一个新的编辑删除旧的编辑
ChangeListener
。
editor
-新编辑
null
IllegalArgumentException
编辑
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
AccessibleContext
为
JSpinner
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.