- java.lang.Object
-
- javax.swing.plaf.ComponentUI
-
- javax.swing.plaf.SliderUI
-
- javax.swing.plaf.basic.BasicSliderUI
-
- 已知直接子类:
-
MetalSliderUI
,SynthSliderUI
public class BasicSliderUI extends SliderUI
SliderUI的基本L&F实现。
-
-
Nested Class Summary
Nested Classes Modifier and Type Class 描述 class
BasicSliderUI.ActionScroller
从Java 2平台v1.3开始,这个未记录的类就不再使用了。class
BasicSliderUI.ChangeHandler
数据模型侦听器class
BasicSliderUI.ComponentHandler
调整事件大小的侦听器。class
BasicSliderUI.FocusHandler
聚焦改变听众class
BasicSliderUI.PropertyChangeHandler
属性更改处理程序。class
BasicSliderUI.ScrollListener
滚动事件侦听器。class
BasicSliderUI.TrackListener
跟踪鼠标移动。
-
Field Summary
Fields Modifier and Type Field 描述 protected ChangeListener
changeListener
改变听众protected ComponentListener
componentListener
组件侦听器protected Rectangle
contentRect
内容矩形protected Insets
focusInsets
焦点插图protected FocusListener
focusListener
聚焦听众protected Rectangle
focusRect
焦点矩形protected Insets
insetCache
插入缓存protected Rectangle
labelRect
标签矩形protected boolean
leftToRightCache
从左到右缓存static int
MAX_SCROLL
最大滚动static int
MIN_SCROLL
最小滚动static int
NEGATIVE_SCROLL
负卷轴static int
POSITIVE_SCROLL
正滚动protected PropertyChangeListener
propertyChangeListener
属性chane监听器protected BasicSliderUI.ScrollListener
scrollListener
滚动侦听器protected Timer
scrollTimer
滚动定时器protected JSlider
slider
滑块protected Rectangle
thumbRect
拇指矩形protected Rectangle
tickRect
勾选矩形protected int
trackBuffer
轨道距控制器一侧的距离protected BasicSliderUI.TrackListener
trackListener
跟踪听众protected Rectangle
trackRect
跟踪矩形
-
构造方法摘要
构造方法 Constructor 描述 BasicSliderUI(JSlider b)
构造一个BasicSliderUI
。
-
方法摘要
所有方法 静态方法 接口方法 具体的方法 Modifier and Type 方法 描述 protected void
calculateContentRect()
计算内容矩形。protected void
calculateFocusRect()
计算焦点矩形。protected void
calculateGeometry()
计算几何。protected void
calculateLabelRect()
计算标签矩形。protected void
calculateThumbLocation()
计算拇指位置。protected void
calculateThumbSize()
计算拇指大小矩形。protected void
calculateTickRect()
计算刻度矩形。protected void
calculateTrackBuffer()
计算轨道缓冲区。protected void
calculateTrackRect()
计算轨道矩形。protected ChangeListener
createChangeListener(JSlider slider)
创建一个更改侦听器。protected ComponentListener
createComponentListener(JSlider slider)
创建一个复合侦听器。protected FocusListener
createFocusListener(JSlider slider)
创建焦点侦听器。protected PropertyChangeListener
createPropertyChangeListener(JSlider slider)
创建属性更改侦听器。protected BasicSliderUI.ScrollListener
createScrollListener(JSlider slider)
创建一个滚动侦听器。protected BasicSliderUI.TrackListener
createTrackListener(JSlider slider)
创建一个轨道监听器。static ComponentUI
createUI(JComponent b)
创建一个UIprotected boolean
drawInverted()
画倒。int
getBaseline(JComponent c, int width, int height)
返回基线。Component.BaselineResizeBehavior
getBaselineResizeBehavior(JComponent c)
返回一个枚举,指示组件的基线如何随着大小的变化而改变。protected Color
getFocusColor()
返回焦点颜色。protected int
getHeightOfHighValueLabel()
返回最高值标签的高度。protected int
getHeightOfLowValueLabel()
返回最低值标签的高度。protected int
getHeightOfTallestLabel()
返回最高标签的高度。protected Integer
getHighestValue()
返回标签表中有一个条目的最大值。protected Component
getHighestValueLabel()
返回与标签表中最低的滑块值对应的标签。protected Color
getHighlightColor()
返回突出显示颜色。protected Integer
getLowestValue()
返回标签表中具有条目的最小值。protected Component
getLowestValueLabel()
返回与标签表中最高的滑块值对应的标签。Dimension
getMaximumSize(JComponent c)
返回最大大小。Dimension
getMinimumHorizontalSize()
返回最小水平尺寸。Dimension
getMinimumSize(JComponent c)
返回最小大小。Dimension
getMinimumVerticalSize()
返回最小垂直尺寸。Dimension
getPreferredHorizontalSize()
返回首选的水平尺寸。Dimension
getPreferredSize(JComponent c)
返回首选大小。Dimension
getPreferredVerticalSize()
返回首选的垂直尺寸。protected Color
getShadowColor()
返回阴影颜色。protected Dimension
getThumbSize()
返回拇指大小。protected int
getTickLength()
获取水平滑块的刻度区域的高度以及垂直滑块的刻度区域的宽度。protected int
getWidthOfHighValueLabel()
返回最高值标签的宽度。protected int
getWidthOfLowValueLabel()
返回最小值标签的宽度。protected int
getWidthOfWidestLabel()
返回最宽标签的宽度。protected void
installDefaults(JSlider slider)
安装默认值。protected void
installKeyboardActions(JSlider slider)
安装键盘操作。protected void
installListeners(JSlider slider)
安装侦听器void
installUI(JComponent c)
安装一个UIprotected boolean
isDragging()
如果用户拖动滑块,则返回true。protected boolean
labelsHaveSameBaselines()
如果标签表中的所有标签具有相同的基线,则返回true。void
paint(Graphics g, JComponent c)
适当地涂抹指定的组件的外观和感觉。void
paintFocus(Graphics g)
油漆重点protected void
paintHorizontalLabel(Graphics g, int value, Component label)
为标签表中的每个标签调用。void
paintLabels(Graphics g)
涂上标签。protected void
paintMajorTickForHorizSlider(Graphics g, Rectangle tickBounds, int x)
绘制水平滑块的主要刻度。protected void
paintMajorTickForVertSlider(Graphics g, Rectangle tickBounds, int y)
绘制垂直滑块的主要刻度。protected void
paintMinorTickForHorizSlider(Graphics g, Rectangle tickBounds, int x)
为水平滑块绘制小刻度。protected void
paintMinorTickForVertSlider(Graphics g, Rectangle tickBounds, int y)
为垂直滑块绘制小刻度。void
paintThumb(Graphics g)
画拇指void
paintTicks(Graphics g)
油漆滴答void
paintTrack(Graphics g)
油漆轨道。protected void
paintVerticalLabel(Graphics g, int value, Component label)
为标签表中的每个标签调用。protected void
recalculateIfInsetsChanged()
如果插图已更改,请重新计算。protected void
recalculateIfOrientationChanged()
重新计算方向是否改变。void
scrollByBlock(int direction)
逐块滚动void
scrollByUnit(int direction)
按单位滚动protected void
scrollDueToClickInTrack(int dir)
当在轨道中检测到mousePressed时,而不是在缩略图中调用此函数。void
setThumbLocation(int x, int y)
设置拇指位置。protected void
uninstallDefaults(JSlider slider)
卸载默认值。protected void
uninstallKeyboardActions(JSlider slider)
卸载键盘操作。protected void
uninstallListeners(JSlider slider)
卸载侦听器。void
uninstallUI(JComponent c)
卸载用户界面int
valueForXPosition(int xPos)
返回x位置的值。int
valueForYPosition(int yPos)
返回y位置的值。protected int
xPositionForValue(int value)
返回值的x位置。protected int
yPositionForValue(int value)
返回值的y位置。protected int
yPositionForValue(int value, int trackY, int trackHeight)
返回指定值的y位置。-
Methods inherited from class javax.swing.plaf.ComponentUI
contains, getAccessibleChild, getAccessibleChildrenCount, update
-
-
-
-
字段详细信息
-
POSITIVE_SCROLL
public static final int POSITIVE_SCROLL
正滚动- 另请参见:
- Constant Field Values
-
NEGATIVE_SCROLL
public static final int NEGATIVE_SCROLL
负卷轴- 另请参见:
- Constant Field Values
-
MIN_SCROLL
public static final int MIN_SCROLL
最小滚动- 另请参见:
- Constant Field Values
-
MAX_SCROLL
public static final int MAX_SCROLL
最大滚动- 另请参见:
- Constant Field Values
-
scrollTimer
protected Timer scrollTimer
滚动定时器
-
slider
protected JSlider slider
滑块
-
focusInsets
protected Insets focusInsets
焦点插图
-
insetCache
protected Insets insetCache
插入缓存
-
leftToRightCache
protected boolean leftToRightCache
从左到右缓存
-
focusRect
protected Rectangle focusRect
焦点矩形
-
contentRect
protected Rectangle contentRect
内容矩形
-
labelRect
protected Rectangle labelRect
标签矩形
-
tickRect
protected Rectangle tickRect
勾选矩形
-
trackRect
protected Rectangle trackRect
跟踪矩形
-
thumbRect
protected Rectangle thumbRect
拇指矩形
-
trackBuffer
protected int trackBuffer
轨道距控制器一侧的距离
-
trackListener
protected BasicSliderUI.TrackListener trackListener
跟踪听众
-
changeListener
protected ChangeListener changeListener
改变听众
-
componentListener
protected ComponentListener componentListener
组件侦听器
-
focusListener
protected FocusListener focusListener
聚焦听众
-
scrollListener
protected BasicSliderUI.ScrollListener scrollListener
滚动侦听器
-
propertyChangeListener
protected PropertyChangeListener propertyChangeListener
属性chane监听器
-
-
构造方法详细信息
-
BasicSliderUI
public BasicSliderUI(JSlider b)
构造一个BasicSliderUI
。- 参数
-
b
- 一个滑块
-
-
方法详细信息
-
getShadowColor
protected Color getShadowColor()
返回阴影颜色。- 结果
- 阴影颜色
-
getHighlightColor
protected Color getHighlightColor()
返回突出显示颜色。- 结果
- 亮点颜色
-
getFocusColor
protected Color getFocusColor()
返回焦点颜色。- 结果
- 焦点颜色
-
isDragging
protected boolean isDragging()
如果用户拖动滑块,则返回true。- 结果
- 如果用户拖动滑块,则为true
- 从以下版本开始:
- 1.5
-
createUI
public static ComponentUI createUI(JComponent b)
创建一个UI- 参数
-
b
- 一个组件 - 结果
- 一个UI
-
installUI
public void installUI(JComponent c)
安装一个UI
-
uninstallUI
public void uninstallUI(JComponent c)
卸载用户界面- 重写:
-
uninstallUI
在ComponentUI
- 参数
-
c
- 一个组件 - 另请参见:
-
ComponentUI.installUI(javax.swing.JComponent)
,JComponent.updateUI()
-
installDefaults
protected void installDefaults(JSlider slider)
安装默认值。- 参数
-
slider
- 一个滑块
-
uninstallDefaults
protected void uninstallDefaults(JSlider slider)
卸载默认值。- 参数
-
slider
- 一个滑块
-
createTrackListener
protected BasicSliderUI.TrackListener createTrackListener(JSlider slider)
创建一个轨道监听器。- 参数
-
slider
- 一个滑块 - 结果
- 轨道听众
-
createChangeListener
protected ChangeListener createChangeListener(JSlider slider)
创建一个更改侦听器。- 参数
-
slider
- 一个滑块 - 结果
- 改变听众
-
createComponentListener
protected ComponentListener createComponentListener(JSlider slider)
创建一个复合侦听器。- 参数
-
slider
- 一个滑块 - 结果
- 复合侦听器
-
createFocusListener
protected FocusListener createFocusListener(JSlider slider)
创建焦点侦听器。- 参数
-
slider
- 一个滑块 - 结果
- 焦点听众
-
createScrollListener
protected BasicSliderUI.ScrollListener createScrollListener(JSlider slider)
创建一个滚动侦听器。- 参数
-
slider
- 一个滑块 - 结果
- 滚动侦听器
-
createPropertyChangeListener
protected PropertyChangeListener createPropertyChangeListener(JSlider slider)
创建属性更改侦听器。- 参数
-
slider
- 一个滑块 - 结果
- 属性更改侦听器
-
installListeners
protected void installListeners(JSlider slider)
安装侦听器- 参数
-
slider
- 一个滑块
-
uninstallListeners
protected void uninstallListeners(JSlider slider)
卸载侦听器。- 参数
-
slider
- 一个滑块
-
installKeyboardActions
protected void installKeyboardActions(JSlider slider)
安装键盘操作。- 参数
-
slider
- 一个滑块
-
uninstallKeyboardActions
protected void uninstallKeyboardActions(JSlider slider)
卸载键盘操作。- 参数
-
slider
- 一个滑块
-
getBaseline
public int getBaseline(JComponent c, int width, int height)
返回基线。- 重写:
-
getBaseline
在ComponentUI
- 参数
-
c
-JComponent
正在请求基准 -
width
- 获取基准的宽度 -
height
- 获取基准的高度 - 结果
- 基线或值<0表示没有合理的基线
- 异常
-
NullPointerException
- 如果c
是null
-
IllegalArgumentException
- 如果宽度或高度<0 - 从以下版本开始:
- 1.6
- 另请参见:
-
JComponent.getBaseline(int, int)
-
getBaselineResizeBehavior
public Component.BaselineResizeBehavior getBaselineResizeBehavior(JComponent c)
返回一个枚举,指示组件的基线如何随着大小的变化而改变。- 重写:
-
getBaselineResizeBehavior
在ComponentUI
- 参数
-
c
-JComponent
以返回基准调整大小行为 - 结果
- 一个枚举,指示基准随着组件大小的变化而改变
- 异常
-
NullPointerException
- 如果c
是null
- 从以下版本开始:
- 1.6
- 另请参见:
-
JComponent.getBaseline(int, int)
-
labelsHaveSameBaselines
protected boolean labelsHaveSameBaselines()
如果标签表中的所有标签具有相同的基线,则返回true。- 结果
- 如果标签表中的所有标签具有相同的基线,则为true
- 从以下版本开始:
- 1.6
-
getPreferredHorizontalSize
public Dimension getPreferredHorizontalSize()
返回首选的水平尺寸。- 结果
- 优选的水平尺寸
-
getPreferredVerticalSize
public Dimension getPreferredVerticalSize()
返回首选的垂直尺寸。- 结果
- 优选的垂直尺寸
-
getMinimumHorizontalSize
public Dimension getMinimumHorizontalSize()
返回最小水平尺寸。- 结果
- 最小水平尺寸
-
getMinimumVerticalSize
public Dimension getMinimumVerticalSize()
返回最小垂直尺寸。- 结果
- 最小垂直尺寸
-
getPreferredSize
public Dimension getPreferredSize(JComponent c)
返回首选大小。- 重写:
-
getPreferredSize
在ComponentUI
- 参数
-
c
- 一个组件 - 结果
- 优选尺寸
- 另请参见:
-
JComponent.getPreferredSize()
,LayoutManager.preferredLayoutSize(java.awt.Container)
-
getMinimumSize
public Dimension getMinimumSize(JComponent c)
返回最小大小。- 重写:
-
getMinimumSize
在ComponentUI
- 参数
-
c
- 一个组件 - 结果
- 最小尺寸
- 另请参见:
-
JComponent.getMinimumSize()
,LayoutManager.minimumLayoutSize(java.awt.Container)
,ComponentUI.getPreferredSize(javax.swing.JComponent)
-
getMaximumSize
public Dimension getMaximumSize(JComponent c)
返回最大大小。- 重写:
-
getMaximumSize
在ComponentUI
- 参数
-
c
- 一个组件 - 结果
- 最大尺寸
- 另请参见:
-
JComponent.getMaximumSize()
,LayoutManager2.maximumLayoutSize(java.awt.Container)
-
calculateGeometry
protected void calculateGeometry()
计算几何。
-
calculateFocusRect
protected void calculateFocusRect()
计算焦点矩形。
-
calculateThumbSize
protected void calculateThumbSize()
计算拇指大小矩形。
-
calculateContentRect
protected void calculateContentRect()
计算内容矩形。
-
calculateThumbLocation
protected void calculateThumbLocation()
计算拇指位置。
-
calculateTrackBuffer
protected void calculateTrackBuffer()
计算轨道缓冲区。
-
calculateTrackRect
protected void calculateTrackRect()
计算轨道矩形。
-
getTickLength
protected int getTickLength()
获取水平滑块的刻度区域的高度以及垂直滑块的刻度区域的宽度。 BasicSliderUI使用返回的值来确定tick区域矩形。 如果你想给你的蜱虫一些空间,使它比你需要的更大,并绘制你的滴答线从paintTicks()的两侧。- 结果
- 表示水平滑块的刻度区域的高度的整数,垂直滑块的刻度区域的宽度
-
calculateTickRect
protected void calculateTickRect()
计算刻度矩形。
-
calculateLabelRect
protected void calculateLabelRect()
计算标签矩形。
-
getThumbSize
protected Dimension getThumbSize()
返回拇指大小。- 结果
- 拇指大小
-
getWidthOfWidestLabel
protected int getWidthOfWidestLabel()
返回最宽标签的宽度。- 结果
- 最宽标签的宽度
-
getHeightOfTallestLabel
protected int getHeightOfTallestLabel()
返回最高标签的高度。- 结果
- 最高标签的高度
-
getWidthOfHighValueLabel
protected int getWidthOfHighValueLabel()
返回最高值标签的宽度。- 结果
- 最高值标签的宽度
-
getWidthOfLowValueLabel
protected int getWidthOfLowValueLabel()
返回最小值标签的宽度。- 结果
- 最小值标签的宽度
-
getHeightOfHighValueLabel
protected int getHeightOfHighValueLabel()
返回最高值标签的高度。- 结果
- 最高价值标签的高度
-
getHeightOfLowValueLabel
protected int getHeightOfLowValueLabel()
返回最低值标签的高度。- 结果
- 最低价值标签的高度
-
drawInverted
protected boolean drawInverted()
画倒。- 结果
- 倒置
-
getHighestValue
protected Integer getHighestValue()
返回标签表中有一个条目的最大值。- 结果
- 在标签表中有一个条目的最大值,或者为null。
- 从以下版本开始:
- 1.6
-
getLowestValue
protected Integer getLowestValue()
返回标签表中具有条目的最小值。- 结果
- 在标签表中具有条目的最小值,或空值。
- 从以下版本开始:
- 1.6
-
getLowestValueLabel
protected Component getLowestValueLabel()
返回与标签表中最高的滑块值对应的标签。- 结果
- 标签对应于标签表中最高的滑块值
- 另请参见:
-
JSlider.setLabelTable(java.util.Dictionary)
-
getHighestValueLabel
protected Component getHighestValueLabel()
返回与标签表中最低的滑块值对应的标签。- 结果
- 标签对应于标签表中最低的滑块值
- 另请参见:
-
JSlider.setLabelTable(java.util.Dictionary)
-
paint
public void paint(Graphics g, JComponent c)
描述从类复制:ComponentUI
适当地涂抹指定的组件的外观和感觉。 当正在绘制指定的组件时,将从ComponentUI.update
方法调用此方法。 子类应该覆盖此方法,并使用指定的Graphics
对象来呈现组件的内容。- 重写:
-
paint
在ComponentUI
- 参数
-
g
- 要绘画的Graphics
上下文 -
c
- 正在画的部件 这个参数经常被忽略,但如果UI对象是无状态的并且被多个组件共享,则可能会被使用 - 另请参见:
-
ComponentUI.update(java.awt.Graphics, javax.swing.JComponent)
-
recalculateIfInsetsChanged
protected void recalculateIfInsetsChanged()
如果插图已更改,请重新计算。
-
recalculateIfOrientationChanged
protected void recalculateIfOrientationChanged()
重新计算方向是否改变。
-
paintFocus
public void paintFocus(Graphics g)
油漆重点- 参数
-
g
- 图形
-
paintTrack
public void paintTrack(Graphics g)
油漆轨道。- 参数
-
g
- 图形
-
paintTicks
public void paintTicks(Graphics g)
油漆滴答- 参数
-
g
- 图形
-
paintMinorTickForHorizSlider
protected void paintMinorTickForHorizSlider(Graphics g, Rectangle tickBounds, int x)
为水平滑块绘制小刻度。- 参数
-
g
- 图形 -
tickBounds
- 刻度界限 -
x
- x坐标
-
paintMajorTickForHorizSlider
protected void paintMajorTickForHorizSlider(Graphics g, Rectangle tickBounds, int x)
绘制水平滑块的主要刻度。- 参数
-
g
- 图形 -
tickBounds
- 刻度界限 -
x
- x坐标
-
paintMinorTickForVertSlider
protected void paintMinorTickForVertSlider(Graphics g, Rectangle tickBounds, int y)
为垂直滑块绘制小刻度。- 参数
-
g
- 图形 -
tickBounds
- 刻度范围 -
y
- y坐标
-
paintMajorTickForVertSlider
protected void paintMajorTickForVertSlider(Graphics g, Rectangle tickBounds, int y)
绘制垂直滑块的主要刻度。- 参数
-
g
- 图形 -
tickBounds
- 刻度界限 -
y
- y坐标
-
paintLabels
public void paintLabels(Graphics g)
涂上标签。- 参数
-
g
- 图形
-
paintHorizontalLabel
protected void paintHorizontalLabel(Graphics g, int value, Component label)
为标签表中的每个标签调用。 用于绘制水平滑块的标签。 图形已经被翻译成labelRect.y了。- 参数
-
g
- 要绘制的图形上下文 -
value
- 滑块的值 -
label
- 标签表中需要绘制的组件标签 - 另请参见:
-
JSlider.setLabelTable(java.util.Dictionary)
-
paintVerticalLabel
protected void paintVerticalLabel(Graphics g, int value, Component label)
为标签表中的每个标签调用。 用于绘制垂直滑块的标签。 图形已经被翻译成labelRect.x。- 参数
-
g
- 要绘制的图形上下文 -
value
- 滑块的值 -
label
- 标签表中需要绘制的组件标签 - 另请参见:
-
JSlider.setLabelTable(java.util.Dictionary)
-
paintThumb
public void paintThumb(Graphics g)
画拇指- 参数
-
g
- 图形
-
setThumbLocation
public void setThumbLocation(int x, int y)
设置拇指位置。- 参数
-
x
- x坐标 -
y
- y坐标
-
scrollByBlock
public void scrollByBlock(int direction)
逐块滚动- 参数
-
direction
- 方向
-
scrollByUnit
public void scrollByUnit(int direction)
按单位滚动- 参数
-
direction
- 方向
-
scrollDueToClickInTrack
protected void scrollDueToClickInTrack(int dir)
当在轨道中检测到mousePressed时,而不是在缩略图中调用此函数。 默认行为是逐块滚动。 您可以覆盖此方法以阻止其滚动或添加其他行为。- 参数
-
dir
- 要滚动的块的方向和数量
-
xPositionForValue
protected int xPositionForValue(int value)
返回值的x位置。- 参数
-
value
- 值 - 结果
- 一个值的x位置
-
yPositionForValue
protected int yPositionForValue(int value)
返回值的y位置。- 参数
-
value
- 值 - 结果
- 一个值的y位置
-
yPositionForValue
protected int yPositionForValue(int value, int trackY, int trackHeight)
返回指定值的y位置。 没有对参数进行检查。 特别是如果trackHeight
为负,则可能会出现未定义的结果。- 参数
-
value
- 获取位置的滑块值 -
trackY
- y-track的轨道 -
trackHeight
- 轨道的高度 - 结果
- 滑块的指定值的y位置
- 从以下版本开始:
- 1.6
-
valueForYPosition
public int valueForYPosition(int yPos)
返回y位置的值。 如果yPos
超出了底部或顶部的轨迹,则该方法将该值设置为滑块的最小值或最大值,具体取决于滑块是否反转。- 参数
-
yPos
- 滑块沿y轴的位置 - 结果
- 在y位置的值
-
valueForXPosition
public int valueForXPosition(int xPos)
返回x位置的值。 如果xPos
超出了左侧或右侧的轨迹,则该方法将该值设置为滑块的最小值或最大值,具体取决于滑块是否反转。- 参数
-
xPos
- 滑块沿x轴的位置 - 结果
- the value of the x position
-
-