- 所有已实现的接口:
-
Adjustable
,ImageObserver
,MenuContainer
,Serializable
,Accessible
- 直接已知的子类:
-
JScrollPane.ScrollBar
通常,随着滚动条中旋钮的位置变化,底层视图中的JViewport的位置也会相应更改,从而改变JViewport的内容。
警告: Swing不是线程安全的。更多信息请参见Swing的线程策略。
警告: 该类的序列化对象将不兼容未来的Swing版本。当前的序列化支持适用于短期存储或在运行相同Swing版本的应用程序之间的RMI。从1.4开始,已将对所有JavaBeans的长期存储支持添加到java.beans
包中。请参见XMLEncoder
。
- 自1.2起:
- 1.2
- 另请参阅:
-
Nested Class Summary
Modifier and TypeClassDescriptionprotected class
该类为JScrollBar
类实现了辅助功能支持。Nested classes/interfaces declared in class javax.swing.JComponent
JComponent.AccessibleJComponent
Nested classes/interfaces declared in class java.awt.Container
Container.AccessibleAWTContainer
Nested classes/interfaces declared in class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
Field Summary
Modifier and TypeFieldDescriptionprotected int
存储滚动条值在块(通常为“页”)上/下请求时更改的量。protected BoundedRangeModel
表示滚动条的最小值、最大值、范围(也称为“visibleAmount”)和当前值的模型。protected int
此滚动条的方向。protected int
存储滚动条值在单位上/下请求时更改的量。Fields declared in class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Fields declared in class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
Fields declared in interface java.awt.Adjustable
HORIZONTAL, NO_ORIENTATION, VERTICAL
Fields declared in interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
Constructor Summary
ConstructorDescription创建具有以下初始值的垂直滚动条:JScrollBar
(int orientation) 创建具有指定方向和以下初始值的滚动条:JScrollBar
(int orientation, int value, int extent, int min, int max) 创建具有指定方向、值、范围、最小值和最大值的滚动条。 -
Method Summary
Modifier and TypeMethodDescriptionvoid
添加一个AdjustmentListener。protected void
fireAdjustmentValueChanged
(int id, int type, int value) 通知侦听器滚动条的模型已更改。获取与此JScrollBar关联的AccessibleContext。返回添加到此JScrollBar的所有AdjustmentListener
的数组。int
为了与java.awt.Scrollbar向后兼容。int
getBlockIncrement
(int direction) 返回滚动条值的更改量,给定块(通常为“页”)上/下请求。int
滚动条的最大值为最大值 - 范围。滚动条沿其滚动轴是灵活的,沿另一个轴是刚性的。int
返回滚动条支持的最小值(通常为零)。滚动条沿其滚动轴是灵活的,沿另一个轴是刚性的。getModel()
返回处理滚动条的四个基本属性的数据模型: 最小值、最大值、值、范围。int
返回组件的方向(水平或垂直)。getUI()
返回实现此组件外观和感觉的委托。返回此组件的LookAndFeel类的名称。int
为了与java.awt.Scrollbar向后兼容。int
getUnitIncrement
(int direction) 返回滚动条值的更改量,给定单位上/下请求。int
getValue()
返回滚动条的值。boolean
如果滚动条旋钮正在被拖动,则为True。int
返回滚动条的范围,也称为其“visibleAmount”。protected String
返回此JScrollBar的字符串表示形式。void
移除一个AdjustmentEvent侦听器。void
setBlockIncrement
(int blockIncrement) 设置blockIncrement属性。void
setEnabled
(boolean x) 启用组件,以便可以更改旋钮位置。void
setMaximum
(int maximum) 设置模型的最大属性。void
setMinimum
(int minimum) 设置模型的最小属性。void
setModel
(BoundedRangeModel newModel) 设置处理滚动条的四个基本属性的模型: 最小值、最大值、值、范围。void
setOrientation
(int orientation) 将滚动条的方向设置为VERTICAL或HORIZONTAL。void
setUI
(ScrollBarUI ui) 设置呈现此组件的L&F对象。void
setUnitIncrement
(int unitIncrement) 设置unitIncrement属性。void
setValue
(int value) 设置滚动条的值。void
setValueIsAdjusting
(boolean b) 设置模型的valueIsAdjusting属性。void
setValues
(int newValue, int newExtent, int newMin, int newMax) 在强制参数遵守通常约束后,设置四个BoundedRangeModel属性:void
setVisibleAmount
(int extent) 设置模型的extent属性。void
updateUI()
覆盖JComponent.updateUI
。Methods declared in class 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, 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, 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, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
Methods declared in class 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
Methods declared in class 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
-
Field Details
-
model
表示滚动条的最小值、最大值、范围(也称为“visibleAmount”)和当前值的模型。- 另请参阅:
-
orientation
protected int orientation此滚动条的方向。- 另请参阅:
-
unitIncrement
protected int unitIncrement存储滚动条值在单位上/下请求时更改的量。- 另请参阅:
-
blockIncrement
protected int blockIncrement存储滚动条值在块(通常为“页”)上/下请求时更改的量。- 另请参阅:
-
-
Constructor Details
-
JScrollBar
public JScrollBar(int orientation, int value, int extent, int min, int max) 创建具有指定方向、值、范围、最小值和最大值的滚动条。 “范围”是可视区域的大小。也称为“visible amount”。注意: 使用
setBlockIncrement
将块增量设置为略小于视图范围的大小。这样,当用户将旋钮跳到相邻位置时,原始内容中的一两行仍保持可见。- 参数:
-
orientation
-JScrollBar
的方向 -
value
- 给出当前值的int -
extent
- 给出值可以“跳跃”的量的int -
min
- 给出最小值的int -
max
- 给出最大值的int - 抛出:
-
IllegalArgumentException
- 如果方向不是VERTICAL、HORIZONTAL之一 - 另请参阅:
-
JScrollBar
public JScrollBar(int orientation) 创建具有指定方向和以下初始值的滚动条:最小值 = 0 最大值 = 100 值 = 0 范围 = 10
- 参数:
-
orientation
-JScrollBar
的方向
-
JScrollBar
public JScrollBar()创建具有以下初始值的垂直滚动条:最小值 = 0 最大值 = 100 值 = 0 范围 = 10
-
-
Method Details
-
setUI
@BeanProperty(hidden=true, visualUpdate=true, description="The UI object that implements the Component\'s LookAndFeel") public void setUI(ScrollBarUI ui) 设置呈现此组件的L&F对象。- 参数:
-
ui
-ScrollBarUI
L&F对象 - 自1.4起:
- 1.4
- 另请参阅:
-
getUI
返回实现此组件外观和感觉的委托。- 覆盖:
-
getUI
在类JComponent
中 - 返回:
- 滚动条的当前UI。
- 另请参阅:
-
updateUI
public void updateUI()覆盖JComponent.updateUI
。- 覆盖:
-
updateUI
在类JComponent
中 - 另请参阅:
-
getUIClassID
返回此组件的LookAndFeel类的名称。- 覆盖:
-
getUIClassID
在类JComponent
中 - 返回:
- 字符串“ScrollBarUI”
- 另请参阅:
-
getOrientation
public int getOrientation()返回组件的方向(水平或垂直)。- 指定者:
-
getOrientation
在接口Adjustable
中 - 返回:
- 垂直或水平
- 参见:
-
setOrientation
@BeanProperty(preferred=true, visualUpdate=true, enumerationValues={"JScrollBar.VERTICAL","JScrollBar.HORIZONTAL"}, description="The scrollbar\'s orientation.") public void setOrientation(int orientation) 将滚动条的方向设置为垂直或水平。- 参数:
-
orientation
- 滚动条的方向 - 抛出:
-
IllegalArgumentException
- 如果方向不是垂直或水平之一 - 参见:
-
getModel
返回处理滚动条的四个基本属性(最小值、最大值、值、可视范围)的数据模型。- 返回:
- 数据模型
- 参见:
-
setModel
@BeanProperty(expert=true, description="The scrollbar\'s BoundedRangeModel.") public void setModel(BoundedRangeModel newModel) 设置处理滚动条的四个基本属性(最小值、最大值、值、可视范围)的模型。- 参数:
-
newModel
- 新模型 - 参见:
-
getUnitIncrement
public int getUnitIncrement(int direction) 返回滚动条的值的变化量,根据单位上/下请求。当用户点击滚动条上/下箭头时,ScrollBarUI实现通常调用此方法,并使用结果更新滚动条的值。子类可以重写此方法来计算一个值,例如滚动文本中的一行(可变高度)或表中的一行所需的变化量。JScrollPane组件创建滚动条(默认情况下)会覆盖此方法,并委托给视口的Scrollable视图(如果有)。Scrollable接口提供了此方法的更专业版本。
提供自定义滚动行为的某些外观实现会忽略此属性。
- 参数:
-
direction
- 分别为-1或1表示上/下 - 返回:
- unitIncrement属性的值
- 参见:
-
setUnitIncrement
@BeanProperty(preferred=true, description="The scrollbar\'s unit increment.") public void setUnitIncrement(int unitIncrement) 设置unitIncrement属性。注意,如果参数等于Integer.MIN_VALUE的值,则大多数外观实现将不提供向右/向下滚动。
提供自定义滚动行为的某些外观实现会忽略此属性。
- 指定者:
-
setUnitIncrement
在接口Adjustable
中 - 参数:
-
unitIncrement
- 单位增量 - 参见:
-
getBlockIncrement
public int getBlockIncrement(int direction) 返回滚动条的值的变化量,根据块(通常是“页”)上/下请求。当用户点击滚动条“旋钮”外部以大幅度向上或向下滚动时,ScrollBarUI实现通常调用此方法。子类可以重写此方法来计算一个值,例如滚动文档中的一个段落所需的变化量。JScrollPane组件创建滚动条(默认情况下)会覆盖此方法,并委托给视口的Scrollable视图(如果有)。Scrollable接口提供了此方法的更专业版本。
提供自定义滚动行为的某些外观实现会忽略此属性。
- 参数:
-
direction
- 分别为-1或1表示上/下 - 返回:
- blockIncrement属性的值
- 参见:
-
setBlockIncrement
@BeanProperty(preferred=true, description="The scrollbar\'s block increment.") public void setBlockIncrement(int blockIncrement) 设置blockIncrement属性。注意,如果参数等于Integer.MIN_VALUE的值,则大多数外观实现将不提供向右/向下滚动。
提供自定义滚动行为的某些外观实现会忽略此属性。
- 指定者:
-
setBlockIncrement
在接口Adjustable
中 - 参数:
-
blockIncrement
- 块增量 - 参见:
-
getUnitIncrement
public int getUnitIncrement()为了与java.awt.Scrollbar向后兼容。- 指定者:
-
getUnitIncrement
在接口Adjustable
中 - 返回:
- 可调对象的单位值增量
- 参见:
-
getBlockIncrement
public int getBlockIncrement()为了与java.awt.Scrollbar向后兼容。- 指定者:
-
getBlockIncrement
在接口Adjustable
中 - 返回:
- 可调对象的块值增量
- 参见:
-
getValue
public int getValue()返回滚动条的值。- 指定者:
-
getValue
在接口Adjustable
中 - 返回:
- 模型的值属性
- 参见:
-
setValue
@BeanProperty(bound=false, preferred=true, description="The scrollbar\'s current value.") public void setValue(int value) 设置滚动条的值。此方法只是将值转发到模型。- 指定者:
-
setValue
在接口Adjustable
中 - 参数:
-
value
- 当前值,在minimum
和maximum
-visibleAmount
之间 - 参见:
-
getVisibleAmount
public int getVisibleAmount()返回滚动条的可视范围,也称为“visibleAmount”。在许多滚动条外观实现中,滚动条“旋钮”或“拇指”的大小与可视范围成比例。- 指定者:
-
getVisibleAmount
在接口Adjustable
中 - 返回:
- 模型的可视范围属性的值
- 参见:
-
setVisibleAmount
@BeanProperty(bound=false, preferred=true, description="The amount of the view that is currently visible.") public void setVisibleAmount(int extent) 设置模型的可视范围属性。- 指定者:
-
setVisibleAmount
在接口Adjustable
中 - 参数:
-
extent
- 指示器的长度 - 参见:
-
getMinimum
public int getMinimum()返回滚动条支持的最小值(通常为零)。- 指定者:
-
getMinimum
在接口Adjustable
中 - 返回:
- 模型的最小值属性的值
- 参见:
-
setMinimum
@BeanProperty(bound=false, preferred=true, description="The scrollbar\'s minimum value.") public void setMinimum(int minimum) 设置模型的最小值属性。- 指定由:
-
setMinimum
在接口Adjustable
中 - 参数:
-
minimum
- 最小值 - 参见:
-
getMaximum
public int getMaximum()滚动条的最大值是最大值减去扩展值。- 指定由:
-
getMaximum
在接口Adjustable
中 - 返回:
- 模型的最大属性值
- 参见:
-
setMaximum
@BeanProperty(bound=false, preferred=true, description="The scrollbar\'s maximum value.") public void setMaximum(int maximum) 设置模型的最大属性。请注意,滚动条的值只能设置为最大值减去扩展值。- 指定由:
-
setMaximum
在接口Adjustable
中 - 参数:
-
maximum
- 最大值 - 参见:
-
getValueIsAdjusting
public boolean getValueIsAdjusting()如果滚动条拖动滑块,则返回true。- 返回:
- 模型的valueIsAdjusting属性值
- 参见:
-
setValueIsAdjusting
@BeanProperty(bound=false, expert=true, description="True if the scrollbar thumb is being dragged.") public void setValueIsAdjusting(boolean b) 设置模型的valueIsAdjusting属性。当滑块拖动开始时,滚动条外观实现应将此属性设置为true,并在拖动结束时将其设置为false。当valueIsAdjusting为true时,滚动条模型不会生成ChangeEvents。- 参数:
-
b
- 如果即将对值属性进行的更改是系列的一部分,则为true
- 参见:
-
setValues
public void setValues(int newValue, int newExtent, int newMin, int newMax) 强制参数遵守通常的约束后,设置四个BoundedRangeModel属性:最小值 ≤ 值 ≤ 值+扩展 ≤ 最大值
- 参数:
-
newValue
- 给出当前值的int值 -
newExtent
- 给出值可以“跳跃”的量的int值 -
newMin
- 给出最小值的int值 -
newMax
- 给出最大值的int值 - 参见:
-
addAdjustmentListener
添加一个AdjustmentListener。每当滚动条的模型更改时,都会通知调整侦听器。为了向后兼容java.awt.Scrollbar,提供了调整事件。请注意,AdjustmentEvents类型属性将始终具有AdjustmentEvent.TRACK的占位符值,因为对BoundedRangeModels值的所有更改都被视为等效的。要更改BoundedRangeModel的值,只需设置其值属性,即model.setValue(123)。不提供有关更改来源的信息,例如它是块递减。我们不会在这里试图制造更改的来源。
- 指定由:
-
addAdjustmentListener
在接口Adjustable
中 - 参数:
-
l
- 要添加的AdjustmentLister - 参见:
-
removeAdjustmentListener
移除一个AdjustmentEvent侦听器。- 指定由:
-
removeAdjustmentListener
在接口Adjustable
中 - 参数:
-
l
- 要移除的AdjustmentLister - 参见:
-
getAdjustmentListeners
返回添加到此JScrollBar的所有AdjustmentListener
的数组。- 返回:
-
所有添加的
AdjustmentListener
或空数组(如果未添加任何侦听器) - 自:
- 1.4
-
fireAdjustmentValueChanged
protected void fireAdjustmentValueChanged(int id, int type, int value) 通知侦听器滚动条的模型已更改。- 参数:
-
id
- 指示事件类型的整数 -
type
- 指示调整类型的整数 -
value
- 调整的当前值 - 参见:
-
getMinimumSize
滚动条沿其滚动轴是灵活的,沿另一个轴是刚性的。- 覆盖:
-
getMinimumSize
在类JComponent
中 - 返回:
-
minimumSize
属性的值 - 参见:
-
getMaximumSize
滚动条沿其滚动轴是灵活的,沿另一个轴是刚性的。- 覆盖:
-
getMaximumSize
在类JComponent
中 - 返回:
-
maximumSize
属性的值 - 参见:
-
setEnabled
public void setEnabled(boolean x) 启用组件,以便可以更改旋钮位置。当禁用时,无法更改旋钮位置。- 覆盖:
-
setEnabled
在类JComponent
中 - 参数:
-
x
- 一个布尔值,true表示启用组件,false表示禁用组件 - 参见:
-
paramString
返回此JScrollBar的字符串表示形式。此方法仅用于调试目的,返回的字符串的内容和格式可能因实现而异。返回的字符串可能为空,但不能为null
。- 覆盖:
-
paramString
在类JComponent
中 - 返回:
- 此JScrollBar的字符串表示形式。
-
getAccessibleContext
获取与此JScrollBar关联的AccessibleContext。对于JScrollBar,AccessibleContext采用AccessibleJScrollBar的形式。如有必要,将创建一个新的AccessibleJScrollBar实例。- 指定由:
-
getAccessibleContext
在接口Accessible
中 - 覆盖:
-
getAccessibleContext
在类Component
中 - 返回:
- 作为此JScrollBar的AccessibleContext的AccessibleJScrollBar
-