java.lang.Object
javax.swing.plaf.ComponentUI
javax.swing.plaf.ScrollBarUI
javax.swing.plaf.basic.BasicScrollBarUI
- 所有已实现的接口:
-
LayoutManager
,SwingConstants
- 直接已知的子类:
-
MetalScrollBarUI
,SynthScrollBarUI
基本外观和感觉的ScrollBarUI实现
-
Nested Class Summary
Modifier and TypeClassDescriptionprotected class
光标键的监听器。protected class
用于监听模型更改的监听器。class
属性更改处理程序protected class
用于监听在ScrollPane
中启动的滚动事件的监听器。protected class
跟踪鼠标拖动。 -
Field Summary
Modifier and TypeFieldDescriptionprotected BasicScrollBarUI.ArrowButtonListener
按钮监听器protected JButton
减量按钮protected static final int
减少高亮protected int
减量按钮和轨道之间的距离。protected JButton
增量按钮protected static final int
增加高亮protected int
增量按钮和轨道之间的距离。protected boolean
拖动protected Dimension
最大拇指大小protected Dimension
最小拇指大小protected BasicScrollBarUI.ModelListener
模型监听器protected static final int
无高亮protected PropertyChangeListener
属性更改监听器protected JScrollBar
滚动条protected int
提示垂直时应该是什么宽度(水平时是高度)。protected BasicScrollBarUI.ScrollListener
滚动监听器protected Timer
滚动计时器protected Color
拇指颜色protected Color
拇指深阴影颜色protected Color
拇指高亮颜色protected Color
拇指浅阴影颜色protected Rectangle
拇指矩形protected Color
轨道颜色protected int
轨道高亮protected Color
轨道高亮颜色protected BasicScrollBarUI.TrackListener
轨道监听器protected Rectangle
轨道矩形Fields declared in interface javax.swing.SwingConstants
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addLayoutComponent
(String name, Component child) 如果布局管理器使用每个组件的字符串,则将组件comp
添加到布局中,并将其与name
指定的字符串关联起来。protected void
配置滚动条颜色。protected BasicScrollBarUI.ArrowButtonListener
创建箭头按钮监听器。protected JButton
createDecreaseButton
(int orientation) 创建减少按钮。protected JButton
createIncreaseButton
(int orientation) 创建增加按钮。protected BasicScrollBarUI.ModelListener
创建模型监听器。protected PropertyChangeListener
创建属性更改监听器。protected BasicScrollBarUI.ScrollListener
创建滚动监听器。protected BasicScrollBarUI.TrackListener
创建轨道监听器。static ComponentUI
创建UI。返回适合外观和感觉的指定组件的最大大小。protected Dimension
返回拇指的最大可接受大小。protected Dimension
返回拇指的最小可接受大小。垂直滚动条的首选宽度是(非null
)增量/减量按钮的首选宽度的最大值,以及拇指的最小宽度。boolean
指示用户是否可以使用鼠标手势(通常是中间鼠标按钮)绝对定位拇指。protected Rectangle
返回拇指当前的大小/位置。protected Rectangle
返回轨道的当前边界,即增量和减量按钮之间的空间,减去插图。protected void
安装组件。protected void
安装默认值。protected void
安装键盘操作。protected void
安装监听器。void
安装UI。boolean
如果鼠标当前位于拇指上,则返回true。void
layoutContainer
(Container scrollbarContainer) 布局指定的容器。protected void
布局水平滚动条。protected void
布局垂直滚动条。minimumLayoutSize
(Container scrollbarContainer) 计算指定容器的最小尺寸维度,给定它包含的组件。protected void
绘制减少高亮。protected void
绘制增加高亮。protected void
paintThumb
(Graphics g, JComponent c, Rectangle thumbBounds) 绘制拇指。protected void
paintTrack
(Graphics g, JComponent c, Rectangle trackBounds) 绘制轨道。preferredLayoutSize
(Container scrollbarContainer) 计算指定容器的首选尺寸维度,给定它包含的组件。void
removeLayoutComponent
(Component child) 从布局中删除指定的组件。protected void
scrollByBlock
(int direction) 按块滚动。protected void
scrollByUnit
(int direction) 按单位滚动。protected void
setThumbBounds
(int x, int y, int width, int height) 设置拇指的边界并强制重新绘制,包括旧的thumbBounds和新的thumbBounds。protected void
setThumbRollover
(boolean active) 设置鼠标当前是否位于拇指上。protected void
卸载组件。protected void
卸载默认值。protected void
卸载键盘操作。protected void
卸载监听器。void
卸载UI。Methods declared in class javax.swing.plaf.ComponentUI
contains, getAccessibleChild, getAccessibleChildrenCount, getBaseline, getBaselineResizeBehavior, getMinimumSize, paint, update
-
Field Details
-
minimumThumbSize
最小拇指大小 -
maximumThumbSize
最大拇指大小 -
thumbHighlightColor
拇指高亮颜色 -
thumbLightShadowColor
拇指浅阴影颜色 -
thumbDarkShadowColor
拇指深阴影颜色 -
thumbColor
拇指颜色 -
trackColor
轨道颜色 -
trackHighlightColor
轨道高亮颜色 -
scrollbar
滚动条 -
incrButton
增量按钮 -
decrButton
减量按钮 -
isDragging
protected boolean isDragging拖动 -
trackListener
轨道监听器 -
buttonListener
按钮监听器 -
modelListener
模型监听器 -
thumbRect
拇指矩形 -
trackRect
轨道矩形 -
trackHighlight
protected int trackHighlight轨道高亮 -
NO_HIGHLIGHT
protected static final int NO_HIGHLIGHT无高亮- 参见:
-
DECREASE_HIGHLIGHT
protected static final int DECREASE_HIGHLIGHT减少高亮- 参见:
-
INCREASE_HIGHLIGHT
protected static final int INCREASE_HIGHLIGHT增加高亮- 参见:
-
scrollListener
滚动监听器 -
propertyChangeListener
属性更改监听器 -
scrollTimer
滚动计时器 -
scrollBarWidth
protected int scrollBarWidth提示垂直时应该是什么宽度(水平时是高度)。- 自从:
- 1.7
-
incrGap
protected int incrGap增量按钮和轨道之间的距离。这可能是一个负数。如果为负数,则按钮和轨道之间将发生重叠,这对于形状按钮很有用。- 自从:
- 1.7
-
decrGap
protected int decrGap减量按钮和轨道之间的距离。这可能是一个负数。如果为负数,则按钮和轨道之间将发生重叠,这对于形状按钮很有用。- 自从:
- 1.7
-
-
Constructor Details
-
BasicScrollBarUI
public BasicScrollBarUI()构造一个BasicScrollBarUI
。
-
-
Method Details
-
createUI
创建UI。- 参数:
-
c
- 组件 - 返回:
- UI
-
configureScrollBarColors
protected void configureScrollBarColors()配置滚动条颜色。 -
installUI
安装UI。- 覆盖:
-
installUI
在类ComponentUI
中 - 参数:
-
c
- 组件 - 参见:
-
uninstallUI
卸载UI。- 覆盖:
-
uninstallUI
在类ComponentUI
中 - 参数:
-
c
- 组件 - 参见:
-
installDefaults
protected void installDefaults()安装默认值。 -
installComponents
protected void installComponents()安装组件。 -
uninstallComponents
protected void uninstallComponents()卸载组件。 -
installListeners
protected void installListeners()安装监听器。 -
installKeyboardActions
protected void installKeyboardActions()安装键盘操作。 -
uninstallKeyboardActions
protected void uninstallKeyboardActions()卸载键盘操作。 -
uninstallListeners
protected void uninstallListeners()卸载监听器。 -
uninstallDefaults
protected void uninstallDefaults()卸载默认值。 -
createTrackListener
创建轨道监听器。- 返回:
- 一个轨道监听器
-
createArrowButtonListener
创建箭头按钮监听器。- 返回:
- 一个箭头按钮监听器
-
createModelListener
创建模型监听器。- 返回:
- 一个模型监听器
-
createScrollListener
创建滚动监听器。- 返回:
- 一个滚动监听器
-
createPropertyChangeListener
创建属性更改监听器。- 返回:
- 一个属性更改监听器
-
setThumbRollover
protected void setThumbRollover(boolean active) 设置鼠标当前是否位于拇指上。- 参数:
-
active
- True表示拇指当前处于活动状态。 - 自从:
- 1.5
-
isThumbRollover
public boolean isThumbRollover()如果鼠标当前位于拇指上,则返回true。- 返回:
- 如果滑块当前处于活动状态,则返回true
- 自1.5版本起:
- 1.5
-
getPreferredSize
垂直滚动条的首选宽度是(非null
)增量/减量按钮的首选宽度的最大值,以及滑块的最小宽度。首选高度是相同部分的首选高度之和。水平滚动条的首选大小基本相似。preferredSize
仅计算一次,随后调用此方法只会返回缓存的大小。- 覆盖:
-
getPreferredSize
在类ComponentUI
中 - 参数:
-
c
- 将此方法委托给我们的JScrollBar
- 返回:
- Basic JScrollBar的首选大小
- 另请参阅:
-
getMaximumSize
从类中复制的描述:ComponentUI
返回适合外观和感觉的指定组件的最大大小。如果返回null
,则最大大小将由组件的布局管理器计算(这是安装了特定布局管理器的任何组件的首选方法)。此方法的默认实现调用getPreferredSize
并返回该值。- 覆盖:
-
getMaximumSize
在类ComponentUI
中 - 参数:
-
c
- 将此方法委托给我们的JScrollBar - 返回:
- new Dimension(Integer.MAX_VALUE, Integer.MAX_VALUE);
- 另请参阅:
-
createDecreaseButton
创建一个减少按钮。- 参数:
-
orientation
- 方向 - 返回:
- 一个减少按钮
-
createIncreaseButton
创建一个增加按钮。- 参数:
-
orientation
- 方向 - 返回:
- 一个增加按钮
-
paintDecreaseHighlight
绘制减少突出显示。- 参数:
-
g
- 图形
-
paintIncreaseHighlight
绘制增加突出显示。- 参数:
-
g
- 图形
-
paintTrack
绘制轨道。- 参数:
-
g
- 图形 -
c
- 组件 -
trackBounds
- 轨道边界
-
paintThumb
绘制滑块。- 参数:
-
g
- 图形 -
c
- 组件 -
thumbBounds
- 滑块边界
-
getMinimumThumbSize
返回滑块的最小可接受大小。如果滚动条变得如此小以至于无法获得此大小,则滑块将被隐藏。警告:此方法返回的值不应该被修改,它是一个共享的静态常量。
- 返回:
- 滑块的最小可接受大小。
- 另请参阅:
-
getMaximumThumbSize
返回滑块的最大可接受大小。要创建固定大小的滑块,可以使此方法和getMinimumThumbSize
返回相同的值。警告:此方法返回的值不应该被修改,它是一个共享的静态常量。
- 返回:
- 滑块的最大可接受大小。
- 另请参阅:
-
addLayoutComponent
从接口中复制的描述:LayoutManager
如果布局管理器使用每个组件的字符串,则将组件comp
添加到布局中,并将其与由name
指定的字符串关联起来。- 指定者:
-
addLayoutComponent
在接口LayoutManager
中 - 参数:
-
name
- 与组件关联的字符串 -
child
- 要添加的组件
-
removeLayoutComponent
从接口中复制的描述:LayoutManager
从布局中移除指定的组件。- 指定者:
-
removeLayoutComponent
在接口LayoutManager
中 - 参数:
-
child
- 要移除的组件
-
preferredLayoutSize
从接口中复制的描述:LayoutManager
计算指定容器的首选大小维度,给定其包含的组件。- 指定者:
-
preferredLayoutSize
在接口LayoutManager
中 - 参数:
-
scrollbarContainer
- 要布局的容器 - 返回:
- 容器的首选尺寸
- 另请参阅:
-
minimumLayoutSize
从接口中复制的描述:LayoutManager
计算指定容器的最小大小维度,给定其包含的组件。- 指定者:
-
minimumLayoutSize
在接口LayoutManager
中 - 参数:
-
scrollbarContainer
- 要布局的组件 - 返回:
- 容器的最小尺寸
- 另请参阅:
-
layoutVScrollbar
布局垂直滚动条。- 参数:
-
sb
- 滚动条
-
layoutHScrollbar
布局水平滚动条。- 参数:
-
sb
- 滚动条
-
layoutContainer
从接口中复制的描述:LayoutManager
布局指定的容器。- 指定者:
-
layoutContainer
在接口LayoutManager
中 - 参数:
-
scrollbarContainer
- 要布局的容器
-
setThumbBounds
protected void setThumbBounds(int x, int y, int width, int height) 设置滑块的边界并强制重绘,包括旧的thumbBounds和新的thumbBounds。- 参数:
-
x
- 设置滑块的x位置 -
y
- 设置滑块的y位置 -
width
- 设置滑块的宽度 -
height
- 设置滑块的高度 - 另请参阅:
-
getThumbBounds
返回滑块的当前大小/位置。警告:此方法返回的值不应该被修改,它是对实际矩形的引用,而不是副本。
- 返回:
- 滑块的当前大小/位置。
- 另请参阅:
-
getTrackBounds
返回轨道的当前边界,即增量和减量按钮之间的空间,减去插图。此方法返回的值在每次滚动条布局(验证)时更新。警告:此方法返回的值不应该被修改,它是对实际矩形的引用,而不是副本。
- 返回值:
- 滚动条轨道的当前边界
- 参见:
-
scrollByBlock
protected void scrollByBlock(int direction) 按块滚动。- 参数:
-
direction
- 滚动的方向
-
scrollByUnit
protected void scrollByUnit(int direction) 按单位滚动。- 参数:
-
direction
- 滚动的方向
-
getSupportsAbsolutePositioning
public boolean getSupportsAbsolutePositioning()指示用户是否可以使用鼠标手势(通常是中间鼠标按钮)绝对定位滑块。- 返回值:
- 如果鼠标手势可以绝对定位滑块,则为true
- 自版本:
- 1.5
-