public class Scrollbar extends Component implements Adjustable, Accessible
Scrollbar类体现了一个滚动条,一个熟悉的用户界面对象。滚动条提供了一种方便的方法,允许用户从一系列值中选择一个。以下三个垂直滚动条可以作为滑块控件选择红色,绿色,和蓝色组成的一个颜色:

在这个示例中的每个滚动条都可以创建类似以下代码的代码:
redSlider=new Scrollbar(Scrollbar.VERTICAL, 0, 1, 0, 255); add(redSlider);
或者,一个滚动条可以代表一个值范围。例如,如果一个滚动条用于通过文本滚动,“泡沫”的宽度(也被称为“拇指”或“滚动框”)可以用来表示可见的文本的数量。这里是一个表示范围的滚动条的示例:

以这个例子中的气泡为代表的值范围是可见的金额。在这个示例中的水平滚动条可以创建与代码如下:
ranger = new Scrollbar(Scrollbar.HORIZONTAL, 0, 60, 0, 300); add(ranger);
注意滚动条的实际最大值是maximum减去visible amount。在前面的例子中,因为maximum 300,visible amount是60,实际的最大值为240。滚动条的跟踪范围是0 - 300。气泡的左边表示滚动条的值。
通常情况下,用户通过鼠标与鼠标的一个手势改变滚动条的值。例如,用户可以拖动滚动条上下的“气泡”,或单击“滚动条”中的单位增量或块增量区域。键盘的手势也可以映射到滚动条上。按照惯例,这 页上和 下页键相当于单击滚动条的块增量和减量区域块。
当用户改变滚动条的滚动条的值,接收AdjustmentEvent实例。滚动条处理此事件,将其传递给任何已注册的侦听器。
任何对象,希望被通知到滚动条的值变化应实施AdjustmentListener,包中的java.awt.event定义接口。听众可以添加和被调用的方法addAdjustmentListener和removeAdjustmentListener动态删除。
的AdjustmentEvent类定义了五种类型的调整事件,这里列出:
AdjustmentEvent.TRACK发出当用户拖动滚动条的泡沫。AdjustmentEvent.UNIT_INCREMENT时发出在水平滚动条左侧的箭头,用户点击,或顶端的箭头的垂直滚动条,或使等效手势键盘。AdjustmentEvent.UNIT_DECREMENT时发出在水平滚动条右箭头,用户点击,或下箭头的垂直滚动条,或使等效手势键盘。AdjustmentEvent.BLOCK_DECREMENT时发出的跟踪用户点击,至气泡在水平滚动条的右边,或在垂直滚动条的泡沫。按照惯例,这 下页关键是等价的,如果用户使用键盘定义 下页关键。JDK 1 事件系统是向后兼容的支持,但它的使用与新版本的平台是气馁。调整事件介绍了JDK 1.1对应,与以前的版本的滚动条相关的五类事件的五种类型。下面的列表给出了调整的事件类型,以及相应的JDK 1事件类型代替。
AdjustmentEvent.TRACK取代Event.SCROLL_ABSOLUTEAdjustmentEvent.UNIT_INCREMENT取代Event.SCROLL_LINE_UPAdjustmentEvent.UNIT_DECREMENT取代Event.SCROLL_LINE_DOWNAdjustmentEvent.BLOCK_INCREMENT取代Event.SCROLL_PAGE_UPAdjustmentEvent.BLOCK_DECREMENT取代Event.SCROLL_PAGE_DOWN注:我们推荐使用Scrollbar价值选择。如果你想实现一个容器内的滚动元件,我们建议你使用ScrollPane。如果你使用一个Scrollbar为此,你可能遇到的问题与绘画、按键处理、大小和位置。
AdjustmentEvent,
AdjustmentListener,
Serialized Form
| Modifier and Type | Class and Description |
|---|---|
protected class |
Scrollbar.AccessibleAWTScrollBar
这个类实现了对
Scrollbar类可访问性支持。
|
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy| Modifier and Type | Field and Description |
|---|---|
static int |
HORIZONTAL
指示一个水平滚动条的常量。
|
static int |
VERTICAL
指示一个垂直滚动条的常数。
|
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTNO_ORIENTATIONABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH| Constructor and Description |
|---|
Scrollbar()
构造一个新的垂直滚动条。
|
Scrollbar(int orientation)
用指定的方向构造一个新的滚动条。
|
Scrollbar(int orientation, int value, int visible, int minimum, int maximum)
用指定的方向、初始值、可见金额和最小值和最大值构造一个新的滚动条。
|
| Modifier and Type | Method and Description |
|---|---|
void |
addAdjustmentListener(AdjustmentListener l)
添加指定的调整听众从这个滚动条
AdjustmentEvent接收实例。
|
void |
addNotify()
创建
Scrollbar的同伴。
|
AccessibleContext |
getAccessibleContext()
获取与此相关的
AccessibleContext
Scrollbar。
|
AdjustmentListener[] |
getAdjustmentListeners()
返回所有的听众对这个滚动条调整注册一个数组。
|
int |
getBlockIncrement()
获取此滚动条的块增量。
|
int |
getLineIncrement()
过时的。
作为JDK 1.1版本,取而代之的
getUnitIncrement()。
|
<T extends EventListener> |
getListeners(类<T> listenerType)
返回对象的当前注册为
FooListeners在这
Scrollbar数组。
|
int |
getMaximum()
获取此滚动条的最大值。
|
int |
getMinimum()
获取此滚动条的最小值。
|
int |
getOrientation()
返回此滚动条的方向。
|
int |
getPageIncrement()
过时的。
作为JDK 1.1版本,取而代之的
getBlockIncrement()。
|
int |
getUnitIncrement()
获取此条单位增量。
|
int |
getValue()
获取此滚动条的当前值。
|
boolean |
getValueIsAdjusting()
当用户正在采取的行动的结果改变的过程中,返回真值。
|
int |
getVisible()
过时的。
作为JDK 1.1版本,取而代之的
getVisibleAmount()。
|
int |
getVisibleAmount()
获取此滚动条的可见数量。
|
protected String |
paramString()
返回一个字符串,表示此
Scrollbar状态。
|
protected void |
processAdjustmentEvent(AdjustmentEvent e)
过程调整事件发生在这个滚动条派遣他们任何注册
AdjustmentListener对象。
|
protected void |
processEvent(AWTEvent e)
在这个滚动条上处理事件。
|
void |
removeAdjustmentListener(AdjustmentListener l)
听众中移除指定的调整以使其不再接收实例
AdjustmentEvent从这个滚动条。
|
void |
setBlockIncrement(int v)
设置此滚动条的块增量。
|
void |
setLineIncrement(int v)
过时的。
作为JDK 1.1版本,取而代之的
setUnitIncrement(int)。
|
void |
setMaximum(int newMaximum)
设置此滚动条的最大值。
|
void |
setMinimum(int newMinimum)
设置此滚动条的最小值。
|
void |
setOrientation(int orientation)
设置此滚动条的方向。
|
void |
setPageIncrement(int v)
过时的。
作为JDK 1.1版本,取而代之的
setBlockIncrement()。
|
void |
setUnitIncrement(int v)
为该滚动条设置单位增量。
|
void |
setValue(int newValue)
将此滚动条的值设置为指定的值。
|
void |
setValueIsAdjusting(boolean b)
集
valueIsAdjusting财产。
|
void |
setValues(int value, int visible, int minimum, int maximum)
物业四套这个滚动条的值:
value,
visibleAmount,
minimum,和
maximum。
|
void |
setVisibleAmount(int newAmount)
设置此滚动条的可见数量。
|
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, deliverEvent, disable, disableEvents, dispatchEvent, doLayout, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getAlignmentX, getAlignmentY, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentAt, getComponentAt, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeys, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocation, getLocationOnScreen, getMaximumSize, getMinimumSize, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPreferredSize, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, invalidate, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusCycleRoot, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, layout, list, list, list, list, list, locate, location, lostFocus, minimumSize, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paint, paintAll, postEvent, preferredSize, prepareImage, prepareImage, print, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, revalidate, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeys, setFocusTraversalKeysEnabled, setFont, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle, update, validatepublic static final int HORIZONTAL
public static final int VERTICAL
public Scrollbar()
throws HeadlessException
| Property | 描述 | Default Value |
|---|---|---|
| orientation | indicates whether the scroll bar is vertical or horizontal |
Scrollbar.VERTICAL |
| value | value which controls the location of the scroll bar's bubble |
0 |
| visible amount | visible amount of the scroll bar's range, typically represented by the size of the scroll bar's bubble |
10 |
| minimum | minimum value of the scroll bar | 0 |
| maximum | maximum value of the scroll bar | 100 |
| unit increment | amount the value changes when the Line Up or Line Down key is pressed, or when the end arrows of the scrollbar are clicked |
1 |
| block increment | amount the value changes when the Page Up or Page Down key is pressed, or when the scrollbar track is clicked on either side of the bubble |
10 |
HeadlessException -如果graphicsenvironment isheadless()返回true。
GraphicsEnvironment.isHeadless()
public Scrollbar(int orientation)
throws HeadlessException
的orientation参数必须将其中一个值Scrollbar.HORIZONTAL,或Scrollbar.VERTICAL,指示一个水平或垂直滚动条,分别。
orientation -表示滚动条的方向
IllegalArgumentException -当一个非法的
orientation参数提供值
HeadlessException -如果graphicsenvironment isheadless()返回true。
GraphicsEnvironment.isHeadless()
public Scrollbar(int orientation,
int value,
int visible,
int minimum,
int maximum)
throws HeadlessException
的orientation参数必须将其中一个值Scrollbar.HORIZONTAL,或Scrollbar.VERTICAL,指示一个水平或垂直滚动条,分别。
参数提供给该构造函数都受到了setValues(int, int, int, int)约束。
orientation -表示滚动条的方向。
value -滚动条的初始值
visible -滚动条可见的量,通常由泡沫的大小
minimum -滚动条的最小值
maximum -滚动条的最大值
IllegalArgumentException -当一个非法的
orientation参数提供值
HeadlessException -如果graphicsenvironment isheadless()返回true。
setValues(int, int, int, int),
GraphicsEnvironment.isHeadless()
public void addNotify()
Scrollbar的同伴。同伴可以修改的
Scrollbar外观没有任何改变它的功能。
addNotify 方法重写,继承类
Component
Component.isDisplayable(),
Component.removeNotify(),
Component.invalidate()
public int getOrientation()
getOrientation 接口
Adjustable
Scrollbar.HORIZONTAL或
Scrollbar.VERTICAL
setOrientation(int)
public void setOrientation(int orientation)
orientation -这个滚动条的方向,无论是
Scrollbar.HORIZONTAL或
Scrollbar.VERTICAL
IllegalArgumentException如果提供
orientation值不是一个法律价值
getOrientation()
public int getValue()
getValue 接口
Adjustable
getMinimum(),
getMaximum()
public void setValue(int newValue)
如果提供的值小于当前minimum或大于当前maximum - visibleAmount,然后minimum或maximum - visibleAmount是取代的,适当的。
通常,一个程序只能通过调用setValues改变滚动条的值。setValues方法的同时同步设置最小,最大,可见量,和一个滚动条值的属性,使它们相互一致。
调用此方法不火AdjustmentEvent。
setValue 接口
Adjustable
newValue -滚动条的新价值
setValues(int, int, int, int),
getValue(),
getMinimum(),
getMaximum()
public int getMinimum()
getMinimum 接口
Adjustable
getValue(),
getMaximum()
public void setMinimum(int newMinimum)
当setMinimum称,最小值发生变化,和其他价值(包括最大,可见量,和当前的滚动条值)改为与新的最小一致性。
通常,一个程序只能通过调用setValues改变滚动条的最小值,setValues方法同时同步设置最小,最大,可见量,和一个滚动条值的属性,使它们相互一致。
注意,设置最小值Integer.MAX_VALUE将导致新的最小值被设置为Integer.MAX_VALUE - 1。
setMinimum 接口
Adjustable
newMinimum -这个滚动条新的最小值
setValues(int, int, int, int),
setMaximum(int)
public int getMaximum()
getMaximum 接口
Adjustable
getValue(),
getMinimum()
public void setMaximum(int newMaximum)
当setMaximum叫做最大值发生变化,和其他价值(包括最小,可见量,和当前的滚动条值)改为了与新的最大一致。
通常,一个程序只能通过调用setValues改变滚动条的最大值。setValues方法的同时同步设置最小,最大,可见量,和一个滚动条值的属性,使它们相互一致。
注意,设置最大值Integer.MIN_VALUE将导致新的最大值被设置为Integer.MIN_VALUE + 1。
setMaximum 接口
Adjustable
newMaximum -这个滚动条的新的最大值
setValues(int, int, int, int),
setMinimum(int)
public int getVisibleAmount()
当一个滚动条用于选择一个值范围时,可见数量是用来表示当前可见的值的范围的。滚动条的气泡(也称为拇指或滚动框)的大小,通常给出了可见金额与滚动条范围的关系的可视化表示形式。请注意,根据平台,可见金额属性的值可能不会在视觉上由气泡的大小表示。
当它不可移动时,滚动条的气泡可能不会显示(例如,当它占用了滚动条的整个长度的轨道,或当滚动条被禁用时)。泡沫是否显示或不不会影响返回的值getVisibleAmount。
getVisibleAmount 接口
Adjustable
setVisibleAmount(int)
@Deprecated public int getVisible()
getVisibleAmount()。
public void setVisibleAmount(int newAmount)
当一个滚动条用于选择一个值范围时,可见数量是用来表示当前可见的值的范围的。滚动条的气泡(也称为拇指或滚动框)的大小,通常给出了可见金额与滚动条范围的关系的可视化表示形式。请注意,根据平台,可见金额属性的值可能不会在视觉上由气泡的大小表示。
当它不可移动时,滚动条的气泡可能不会显示(例如,当它占用了滚动条的整个长度的轨道,或当滚动条被禁用时)。泡沫是否显示或不不会影响返回的值getVisibleAmount。
如果可见供应量小于one或大于当前maximum - minimum,然后one或maximum - minimum是取代的,适当的。
通常,一个程序只能通过调用setValues改变滚动条的值。setValues方法的同时同步设置最小,最大,可见量,和一个滚动条值的属性,使它们相互一致。
setVisibleAmount 接口
Adjustable
newAmount -新的可见数量
getVisibleAmount(),
setValues(int, int, int, int)
public void setUnitIncrement(int v)
单位增量是当用户激活滚动条的单位增量区域时,增加或减去的值,一般通过鼠标或键盘的手势,滚动条接收作为一个调整事件。单位增量必须大于零。attepts设置单元增量值低于1将导致1的值被设置。
在一些操作系统中,此属性可以被底层控件忽略。
setUnitIncrement 接口
Adjustable
v -量的递增或递减的滚动条的值
getUnitIncrement()
@Deprecated public void setLineIncrement(int v)
setUnitIncrement(int)。
public int getUnitIncrement()
单位增量是当用户激活滚动条的单位增量区域时,增加或减去的值,一般通过鼠标或键盘的手势,滚动条接收作为一个调整事件。单位增量必须大于零。
在一些操作系统中,此属性可以被底层控件忽略。
getUnitIncrement 接口
Adjustable
setUnitIncrement(int)
@Deprecated public int getLineIncrement()
getUnitIncrement()。
public void setBlockIncrement(int v)
块增量是当用户激活滚动条的块增量区域时,增加或减去的值,一般通过鼠标或键盘的手势,滚动条接收作为一个调整事件。块增量必须大于零。attepts设置块增量值低于1将导致1的值被设置。
setBlockIncrement 接口
Adjustable
v -量的递增或递减的滚动条的值
getBlockIncrement()
@Deprecated public void setPageIncrement(int v)
setBlockIncrement()。
public int getBlockIncrement()
块增量是当用户激活滚动条的块增量区域时,增加或减去的值,一般通过鼠标或键盘的手势,滚动条接收作为一个调整事件。块增量必须大于零。
getBlockIncrement 接口
Adjustable
setBlockIncrement(int)
@Deprecated public int getPageIncrement()
getBlockIncrement()。
public void setValues(int value,
int visible,
int minimum,
int maximum)
value,
visibleAmount,
minimum,和
maximum。如果所提供的这些特性是不一致的或不正确的,他们将改变以确保一致性。
此方法同时同步设置了四个滚动条属性的值,确保这些属性的值是相互一致的。它执行以下约束:maximum必须大于minimum,maximum - minimum不得大于Integer.MAX_VALUE,visibleAmount必须大于零。visibleAmount不得大于maximum - minimum,value不得小于minimum,和value不得大于maximum - visibleAmount
调用此方法不火AdjustmentEvent。
value -在当前窗口的位置
visible是滚动条可见的量
minimum是滚动条的最小值
maximum是滚动条的最大值
setMinimum(int),
setMaximum(int),
setVisibleAmount(int),
setValue(int)
public boolean getValueIsAdjusting()
valueIsAdjusting属性的值
setValueIsAdjusting(boolean)
public void setValueIsAdjusting(boolean b)
valueIsAdjusting财产。
b -进展状况的新调整
getValueIsAdjusting()
public void addAdjustmentListener(AdjustmentListener l)
addAdjustmentListener 接口
Adjustable
l -调整的倾听者
removeAdjustmentListener(java.awt.event.AdjustmentListener),
getAdjustmentListeners(),
AdjustmentEvent,
AdjustmentListener
public void removeAdjustmentListener(AdjustmentListener l)
AdjustmentEvent从这个滚动条。如果我是
null,不引发异常,则不执行行动。
参考AWT Threading Issues对AWT的线程模型的细节。
removeAdjustmentListener 接口
Adjustable
l -调整的倾听者
addAdjustmentListener(java.awt.event.AdjustmentListener),
getAdjustmentListeners(),
AdjustmentEvent,
AdjustmentListener
public AdjustmentListener[] getAdjustmentListeners()
AdjustmentListeners滚动条或空数组如果没有调整的听众正在注册
addAdjustmentListener(java.awt.event.AdjustmentListener),
removeAdjustmentListener(java.awt.event.AdjustmentListener),
AdjustmentEvent,
AdjustmentListener
public <T extends EventListener> T[] getListeners(类<T> listenerType)
FooListeners在这
Scrollbar数组。
FooListeners使用
addFooListener方法注册。如果没有这样
您可以指定一个类的listenerType字面的说法,如FooListener.class。例如,你可以查询其鼠标的听众与下面的代码Scrollbar c:
MouseListener [] MLS =(MouseListener [ ])(c.getlisteners(MouseListener类));听众的存在,此方法将返回空数组。
getListeners 方法重写,继承类
Component
listenerType -听众的类型要求;这个参数应该指定一个接口,从
java.util.EventListener
FooListeners数组,或一个空数组如果没有这样的听众已添加
ClassCastException -如果
listenerType不指定一个类或接口实现
java.util.EventListener
Component.getComponentListeners(),
Component.getFocusListeners(),
Component.getHierarchyListeners(),
Component.getHierarchyBoundsListeners(),
Component.getKeyListeners(),
Component.getMouseListeners(),
Component.getMouseMotionListeners(),
Component.getMouseWheelListeners(),
Component.getInputMethodListeners(),
Component.getPropertyChangeListeners()
protected void processEvent(AWTEvent e)
AdjustmentEvent实例,它调用
processAdjustmentEvent方法。否则,它调用其基类的
processEvent方法。
注意,如果参数是null行为是不可能导致异常。
processEvent 方法重写,继承类
Component
e -事件
AdjustmentEvent,
processAdjustmentEvent(java.awt.event.AdjustmentEvent)
protected void processAdjustmentEvent(AdjustmentEvent e)
AdjustmentListener对象。
此方法不调用此方法,除非该组件启用了调整事件。当下列情况之一发生时,启用调整事件:
AdjustmentListener对象是通过addAdjustmentListener注册。enableEvents。注意,如果参数是null行为是不可能导致异常。
e -调整事件
AdjustmentEvent,
AdjustmentListener,
addAdjustmentListener(java.awt.event.AdjustmentListener),
Component.enableEvents(long)
protected String paramString()
Scrollbar状态。此方法仅用于调试目的,返回的字符串的内容和格式可能会在实现过程中有所不同。返回的字符串是空的但可能不
null。
paramString 方法重写,继承类
Component
public AccessibleContext getAccessibleContext()
AccessibleContext
Scrollbar。为滚动条的
AccessibleContext以一个
AccessibleAWTScrollBar形式。一个新的
AccessibleAWTScrollBar实例被创建时。
getAccessibleContext 接口
Accessible
getAccessibleContext 方法重写,继承类
Component
AccessibleAWTScrollBar作为本
ScrollBar的
AccessibleContext
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.