public class SynthProgressBarUI extends BasicProgressBarUI implements SynthUI, PropertyChangeListener
JProgressBar
。
BasicProgressBarUI.ChangeHandler
boxRect, changeListener, progressBar
DEFAULT, DISABLED, ENABLED, FOCUSED, MOUSE_OVER, PRESSED, SELECTED
Constructor and Description |
---|
SynthProgressBarUI() |
Modifier and Type | Method and Description |
---|---|
static ComponentUI |
createUI(JComponent x)
为给定的组件创建一个新的UI对象。
|
int |
getBaseline(JComponent c, int width, int height)
返回基线。
|
protected Rectangle |
getBox(Rectangle r)
存储将在
r 为当前动画索引绘制的弹跳框的位置和大小,并返回
r 。
|
SynthContext |
getContext(JComponent c)
返回指定组件的上下文。
|
Dimension |
getPreferredSize(JComponent c)
返回指定组件的偏好大小,适合外观和感觉。
|
protected void |
installDefaults() |
protected void |
installListeners() |
void |
paint(Graphics g, JComponent c)
根据外观和外观绘制指定的组件。
|
protected void |
paint(SynthContext context, Graphics g)
绘制指定的组件。
|
void |
paintBorder(SynthContext context, Graphics g, int x, int y, int w, int h)
画边框
|
protected void |
paintText(SynthContext context, Graphics g, String title)
绘制组件的文本。
|
void |
propertyChange(PropertyChangeEvent e)
当绑定属性更改时,此方法将被调用。
|
protected void |
setAnimationIndex(int newValue)
将当前动画帧的索引设置为指定的值,并请求重绘进度条。
|
protected void |
uninstallDefaults() |
protected void |
uninstallListeners()
删除此对象安装的所有侦听器。
|
void |
update(Graphics g, JComponent c)
通知此UI代理重新绘制指定的组件。
|
getAmountFull, getAnimationIndex, getBaselineResizeBehavior, getBoxLength, getCellLength, getCellSpacing, getFrameCount, getMaximumSize, getMinimumSize, getPreferredInnerHorizontal, getPreferredInnerVertical, getSelectionBackground, getSelectionForeground, getStringPlacement, incrementAnimationIndex, installUI, paintDeterminate, paintIndeterminate, paintString, setCellLength, setCellSpacing, startAnimationTimer, stopAnimationTimer, uninstallUI
contains, getAccessibleChild, getAccessibleChildrenCount
public static ComponentUI createUI(JComponent x)
x
- 创建UI对象的组件
protected void installListeners()
protected void uninstallListeners()
protected void installDefaults()
protected void uninstallDefaults()
public SynthContext getContext(JComponent c)
getContext
在界面
SynthUI
c
- 组件请求SynthContext。
public int getBaseline(JComponent c, int width, int height)
getBaseline
在
BasicProgressBarUI
c
-
JComponent
正在请求基准
width
- 获取基准的宽度
height
- 获取基准的高度
JComponent.getBaseline(int, int)
protected Rectangle getBox(Rectangle r)
r
为当前动画索引绘制的弹跳框的位置和大小,并返回r
。
添加到此类实现paintIndeterminate
中绘制的绘图的paintIndeterminate
类(例如,在弹跳框中绘制轮廓)可以使用此方法来获取刚被绘制的弹跳框的位置。
通过覆盖此方法,您可以完全控制弹跳框的大小和位置,而无需重新实现paintIndeterminate
。
getBox
在
BasicProgressBarUI
r
- 要修改的Rectangle实例;
可能是null
null
如果没有框应该画;
否则,返回传入矩形(如果非空)或新矩形
BasicProgressBarUI.setAnimationIndex(int)
protected void setAnimationIndex(int newValue)
repaint
方法的方式。
setAnimationIndex
在
BasicProgressBarUI
newValue
- 新的动画索引;
不对其值进行检查
BasicProgressBarUI.incrementAnimationIndex()
public void update(Graphics g, JComponent c)
paint(SynthContext,Graphics)
方法。
通常,此方法不需要被子类覆盖。 所有Look和Feel渲染代码应该位于paint
方法中。
update
在
ComponentUI
g
- 用于绘画的
Graphics
对象
c
- 正在涂漆的组件
paint(SynthContext,Graphics)
public void paint(Graphics g, JComponent c)
Synth Look and Feel不使用此方法。 绘画由paint(SynthContext,Graphics)
处理。
paint
在
BasicProgressBarUI
g
- 用于绘画的
Graphics
对象
c
- 正在涂漆的组件
paint(SynthContext,Graphics)
protected void paint(SynthContext context, Graphics g)
context
- 正在绘制的组件的上下文
g
- 用于绘画的
Graphics
物件
update(Graphics,JComponent)
protected void paintText(SynthContext context, Graphics g, String title)
context
- 正在绘制的组件的上下文
g
-
Graphics
用于绘画的对象
title
- 要绘画的文字
public void paintBorder(SynthContext context, Graphics g, int x, int y, int w, int h)
paintBorder
在接口
SynthUI
context
- 组件上下文
g
-
Graphics
画
x
- X坐标
y
- Y坐标
w
- 边框的宽度
h
- 边框的高度
public void propertyChange(PropertyChangeEvent e)
propertyChange
在接口
PropertyChangeListener
e
- 描述事件源和已更改的属性的PropertyChangeEvent对象。
public Dimension getPreferredSize(JComponent c)
null
,则首选大小将由组件的布局管理器计算(这是安装了特定布局管理器的任何组件的首选方法)。
此方法的默认实现返回null
。
getPreferredSize
在
BasicProgressBarUI
类
c
- 要查询其首选大小的组件;
这个参数经常被忽略,但如果UI对象是无状态的并且被多个组件共享,则可能会被使用
JComponent.getPreferredSize()
,
LayoutManager.preferredLayoutSize(java.awt.Container)