public class BasicLabelUI extends LabelUI implements PropertyChangeListener
Modifier and Type | Field and Description |
---|---|
protected static BasicLabelUI |
labelUI
默认为
BasicLabelUI 实例。
|
Constructor and Description |
---|
BasicLabelUI() |
Modifier and Type | Method and Description |
---|---|
static ComponentUI |
createUI(JComponent c) |
int |
getBaseline(JComponent c, int width, int height)
返回基线。
|
Component.BaselineResizeBehavior |
getBaselineResizeBehavior(JComponent c)
返回一个枚举,指示组件的基线如何随着大小的变化而改变。
|
Dimension |
getMaximumSize(JComponent c)
返回指定组件的最大尺寸,适合外观和感觉。
|
Dimension |
getMinimumSize(JComponent c)
返回指定组件的最小尺寸,适合外观和感觉。
|
Dimension |
getPreferredSize(JComponent c)
返回指定组件的偏好大小,适合外观和感觉。
|
protected void |
installComponents(JLabel c) |
protected void |
installDefaults(JLabel c) |
protected void |
installKeyboardActions(JLabel l) |
protected void |
installListeners(JLabel c) |
void |
installUI(JComponent c)
适当地配置指定的组件的外观和感觉。
|
protected String |
layoutCL(JLabel label, FontMetrics fontMetrics, String text, Icon icon, Rectangle viewR, Rectangle iconR, Rectangle textR)
转发给SwingUtilities.layoutCompoundLabel()的调用。
|
void |
paint(Graphics g, JComponent c)
用前景颜色绘制标签文本,如果标签不透明,则使用背景颜色绘制整个背景。
|
protected void |
paintDisabledText(JLabel l, Graphics g, String s, int textX, int textY)
在textX上绘制clippedText,textY与background.lighter(),然后向下移动并向右移动一个像素与background.darker()。
|
protected void |
paintEnabledText(JLabel l, Graphics g, String s, int textX, int textY)
在textX上绘制clippedText,textY带有标签前景色。
|
void |
propertyChange(PropertyChangeEvent e)
当绑定属性更改时,此方法将被调用。
|
protected void |
uninstallComponents(JLabel c) |
protected void |
uninstallDefaults(JLabel c) |
protected void |
uninstallKeyboardActions(JLabel c) |
protected void |
uninstallListeners(JLabel c) |
void |
uninstallUI(JComponent c)
在installUI中反转在
installUI 上完成的
installUI 。
|
contains, getAccessibleChild, getAccessibleChildrenCount, update
protected static BasicLabelUI labelUI
BasicLabelUI
实例。
此字段可能不会被使用。
要更改默认实例,请使用覆盖createUI
方法的子类,并将该类名称放在默认表中的“LabelUI”键下。
protected String layoutCL(JLabel label, FontMetrics fontMetrics, String text, Icon icon, Rectangle viewR, Rectangle iconR, Rectangle textR)
protected void paintEnabledText(JLabel l, Graphics g, String s, int textX, int textY)
protected void paintDisabledText(JLabel l, Graphics g, String s, int textX, int textY)
public void paint(Graphics g, JComponent c)
paintEnabledText(javax.swing.JLabel, java.awt.Graphics, java.lang.String, int, int)
或paintDisabledText(javax.swing.JLabel, java.awt.Graphics, java.lang.String, int, int)
绘制 。
标签部件的位置由layoutCL(javax.swing.JLabel, java.awt.FontMetrics, java.lang.String, javax.swing.Icon, java.awt.Rectangle, java.awt.Rectangle, java.awt.Rectangle)
计算。
paint
在
ComponentUI
g
- 要绘画的
Graphics
上下文
c
- 正在涂漆的组件;
这个参数经常被忽略,但如果UI对象是无状态的并且被多个组件共享,则可能会被使用
paintEnabledText(javax.swing.JLabel, java.awt.Graphics, java.lang.String, int, int)
,
paintDisabledText(javax.swing.JLabel, java.awt.Graphics, java.lang.String, int, int)
,
layoutCL(javax.swing.JLabel, java.awt.FontMetrics, java.lang.String, javax.swing.Icon, java.awt.Rectangle, java.awt.Rectangle, java.awt.Rectangle)
public Dimension getPreferredSize(JComponent c)
ComponentUI
null
,则首选大小将由组件的布局管理器计算(这是安装了特定布局管理器的任何组件的首选方法)。
此方法的默认实现返回null
。
getPreferredSize
在
ComponentUI
c
- 要查询其首选大小的组件;
这个参数经常被忽略,但如果UI对象是无状态的并且被多个组件共享,则可能会被使用
JComponent.getPreferredSize()
,
LayoutManager.preferredLayoutSize(java.awt.Container)
public Dimension getMinimumSize(JComponent c)
ComponentUI
null
,则最小大小将由组件的布局管理器计算(这是安装了特定布局管理器的任何组件的首选方法)。
此方法的默认实现将调用getPreferredSize
并返回该值。
getMinimumSize
在
ComponentUI
c
- 正在查询最小大小的组件;
这个参数经常被忽略,但如果UI对象是无状态的并且被多个组件共享,则可能会被使用
JComponent.getMinimumSize()
,
LayoutManager.minimumLayoutSize(java.awt.Container)
,
ComponentUI.getPreferredSize(javax.swing.JComponent)
public Dimension getMaximumSize(JComponent c)
ComponentUI
复制
null
,则最大大小将由组件的布局管理器计算(这是安装了特定布局管理器的任何组件的首选方法)。
此方法的默认实现将调用getPreferredSize
并返回该值。
getMaximumSize
在
ComponentUI
类
c
- 查询最大大小的组件;
这个参数经常被忽略,但如果UI对象是无状态的并且被多个组件共享,则可能会被使用
JComponent.getMaximumSize()
,
LayoutManager2.maximumLayoutSize(java.awt.Container)
public int getBaseline(JComponent c, int width, int height)
getBaseline
在
ComponentUI
c
-
JComponent
正在请求基准
width
- 获取基准的宽度
height
- 获得基准的高度
NullPointerException
- 如果
c
是
null
IllegalArgumentException
- 如果宽度或高度<0
JComponent.getBaseline(int, int)
public Component.BaselineResizeBehavior getBaselineResizeBehavior(JComponent c)
getBaselineResizeBehavior
在
ComponentUI
c
-
JComponent
以返回基准调整大小行为
NullPointerException
- 如果
c
是
null
JComponent.getBaseline(int, int)
public void installUI(JComponent c)
ComponentUI
ComponentUI
实例作为指定组件上的UI委托时,将调用此方法。
该方法应该完全配置组件的外观,包括以下内容:
LayoutManager
上安装LayoutManager。 PropertyChangeListener
上创建/安装PropertyChangeListener,以便适当地检测和响应组件属性更改。 installUI
在
ComponentUI
c
- 正在安装此UI代理的组件
ComponentUI.uninstallUI(javax.swing.JComponent)
,
JComponent.setUI(javax.swing.plaf.ComponentUI)
,
JComponent.updateUI()
public void uninstallUI(JComponent c)
ComponentUI
installUI
上完成的installUI
。
当将此UIComponent
实例作为指定组件的UI委托删除时,将调用此方法。
该方法应该撤消在installUI中执行的installUI
,小心使JComponent
实例处于干净状态(无外部侦听器,外观特定属性对象等)。
这应该包括以下内容:
uninstallUI
在
ComponentUI
c
- 正在删除此UI代理的组件;
这个参数经常被忽略,但如果UI对象是无状态的并且被多个组件共享,则可能会被使用
ComponentUI.installUI(javax.swing.JComponent)
,
JComponent.updateUI()
protected void installDefaults(JLabel c)
protected void installListeners(JLabel c)
protected void installComponents(JLabel c)
protected void installKeyboardActions(JLabel l)
protected void uninstallDefaults(JLabel c)
protected void uninstallListeners(JLabel c)
protected void uninstallComponents(JLabel c)
protected void uninstallKeyboardActions(JLabel c)
public static ComponentUI createUI(JComponent c)
public void propertyChange(PropertyChangeEvent e)
PropertyChangeListener
复制
propertyChange
在界面
PropertyChangeListener
e
- 描述事件源和已更改的属性的PropertyChangeEvent对象。