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_ABSOLUTE
AdjustmentEvent.UNIT_INCREMENT
取代Event.SCROLL_LINE_UP
AdjustmentEvent.UNIT_DECREMENT
取代Event.SCROLL_LINE_DOWN
AdjustmentEvent.BLOCK_INCREMENT
取代Event.SCROLL_PAGE_UP
AdjustmentEvent.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_ALIGNMENT
NO_ORIENTATION
ABORT, 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)
返回对象的当前注册为
FooListener s在这
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, validate
public 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()
AdjustmentListener
s滚动条或空数组如果没有调整的听众正在注册
addAdjustmentListener(java.awt.event.AdjustmentListener)
,
removeAdjustmentListener(java.awt.event.AdjustmentListener)
,
AdjustmentEvent
,
AdjustmentListener
public <T extends EventListener> T[] getListeners(类<T> listenerType)
FooListener
s在这
Scrollbar
数组。
FooListener
s使用
addFooListener
方法注册。如果没有这样
您可以指定一个类的listenerType
字面的说法,如FooListener.class
。例如,你可以查询其鼠标的听众与下面的代码Scrollbar
c
:
MouseListener [] MLS =(MouseListener [ ])(c.getlisteners(MouseListener类));听众的存在,此方法将返回空数组。
getListeners
方法重写,继承类
Component
listenerType
-听众的类型要求;这个参数应该指定一个接口,从
java.util.EventListener
FooListener
s数组,或一个空数组如果没有这样的听众已添加
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.