|
JavaTM Platform Standard Ed. 6 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
java.lang.Object javax.swing.plaf.ComponentUI
public abstract class ComponentUI
用于 Swing 可插入外观架构中所有 UI 委托对象的基本类。Swing 组件的 UI 委托对象负责实现依赖于外观的那些组件的某些方面。为了委托那些可能随所安装的外观而改变的操作(绘制、布局计算等等),JComponent
类要调用来自此类的方法。客户端程序不应在此类上直接调用这些方法。
JComponent
,
UIManager
构造方法摘要 | |
---|---|
ComponentUI()
单独的构造方法。 |
方法摘要 | |
---|---|
boolean |
contains(JComponent c,
int x,
int y)
如果指定 x,y 位置包含在指定组件外观的已定义形状中,则返回 true 。 |
static ComponentUI |
createUI(JComponent c)
返回指定组件的一个 UI 委托实例。 |
Accessible |
getAccessibleChild(JComponent c,
int i)
返回对象的第 i 个 Accessible 子对象。 |
int |
getAccessibleChildrenCount(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)
返回指定组件的适合外观的首选大小。 |
void |
installUI(JComponent c)
配置指定组件,使其适合外观。 |
void |
paint(Graphics g,
JComponent c)
绘制指定组件,使其适合外观。 |
void |
uninstallUI(JComponent c)
在 installUI 期间,在指定组件上反向执行的配置操作。 |
void |
update(Graphics g,
JComponent c)
通知此 UI 委托开始绘制指定的组件。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
构造方法详细信息 |
---|
public ComponentUI()
方法详细信息 |
---|
public void installUI(JComponent c)
ComponentUI
实例将作为 UI 委托安装在指定组件上时,可调用此方法。此方法应该为外观完整地配置组件,包括以下方面:
LayoutManager
。
PropertyChangeListener
。
c
- 将安装此 UI 委托的组件uninstallUI(javax.swing.JComponent)
,
JComponent.setUI(javax.swing.plaf.ComponentUI)
,
JComponent.updateUI()
public void uninstallUI(JComponent c)
installUI
期间,在指定组件上反向执行的配置操作。当此 UIComponent
实例将作为 UI 委托从指定组件上移除时,可调用此方法。此方法应该取消在 installUI
中执行的配置操作,非常小心地使 JComponent
实例处于某种洁净状态(没有额外的侦听器、没有特定于外观的属性对象等等)。配置内容应该包括以下方面:
c
- 从中移除此 UI 委托的组件;此参数常被忽略,但如果 UI 对象是无状态的并由多个组件共享,则可以使用该参数installUI(javax.swing.JComponent)
,
JComponent.updateUI()
public void paint(Graphics g, JComponent c)
ComponentUI.update
方法中调用此方法。子类应该重写此方法并使用指定 Graphics
对象来呈现组件的内容。
g
- 将在其中进行绘制的 Graphics
上下文c
- 将绘制的组件;此参数常被忽略,但如果 UI 对象是无状态的并由多个组件共享,则可以使用该参数update(java.awt.Graphics, javax.swing.JComponent)
public void update(Graphics g, JComponent c)
JComponent
调用此方法。默认情况下,此方法将使用其背景色填充指定组件(如果其 opaque
属性为 true
),然后立刻调用 paint
。通常无需由子类重写此方法;所有呈现代码的外观都应位于 paint
方法中。
g
- 将在其中进行绘制的 Graphics
上下文c
- 将绘制的组件;此参数常被忽略,但如果 UI 对象是无状态的并由多个组件共享,则可以使用该参数paint(java.awt.Graphics, javax.swing.JComponent)
,
JComponent.paintComponent(java.awt.Graphics)
public Dimension getPreferredSize(JComponent c)
null
,则首选大小将由组件的布局管理器计算(对于安装了特定布局管理器的组件而言,这是首选方法)。此方法的默认实现返回 null
。
c
- 将查询其首选大小的组件;此参数常被忽略,但如果 UI 对象是无状态的并由多个组件共享,则可以使用该参数JComponent.getPreferredSize()
,
LayoutManager.preferredLayoutSize(java.awt.Container)
public Dimension getMinimumSize(JComponent c)
null
,则最小大小将由组件的布局管理器计算(对于安装了特定布局管理器的组件而言,这是首选方法)。此方法的默认实现调用 getPreferredSize
并返回该值。
c
- 将查询其最小大小的组件;此参数常被忽略,但如果 UI 对象是无状态的并由多个组件共享,则可以使用该参数
Dimension
对象或 null
JComponent.getMinimumSize()
,
LayoutManager.minimumLayoutSize(java.awt.Container)
,
getPreferredSize(javax.swing.JComponent)
public Dimension getMaximumSize(JComponent c)
null
,则最大大小将由组件的布局管理器计算(对于安装了特定布局管理器的组件而言,这是首选方法)。此方法的默认实现调用 getPreferredSize
并返回该值。
c
- 将查询其最大大小的组件;此参数常被忽略,但如果 UI 对象是无状态的并由多个组件共享,则可以使用该参数
Dimension
对象或 null
JComponent.getMaximumSize()
,
LayoutManager2.maximumLayoutSize(java.awt.Container)
public boolean contains(JComponent c, int x, int y)
true
。x
和 y
都是相对于指定组件的坐标系统定义的。尽管组件的 bounds
被限制为一个矩形,但为了进行命中检测,此方法提供了在这些边界内定义非矩形形状的办法。
c
- 将在其中查询 x,y 的组件;此参数常被忽略,但如果 UI 对象是无状态的并由多个组件共享,则可以使用该参数x
- 点的 x 坐标y
- 点的 y 坐标JComponent.contains(int, int)
,
Component.contains(int, int)
public static ComponentUI createUI(JComponent c)
createUI
方法,该方法返回 UI 委托子类的一个实例。如果 UI 委托子类是无状态的,则该方法可以返回一个由多个组件共享的实例。如果 UI 委托是有状态的,则该方法应该为每个组件返回一个新实例。此方法的默认实现抛出一个错误,因为它永远都不应该被调用。
public int getBaseline(JComponent c, int width, int height)
LayoutManager
用来沿其基线对齐组件。小于 0 的返回值指示此组件不具有合理的基线以及 LayoutManager
不应在其基线上对齐此组件。
此方法返回 -1。具有有意义的基线的子类应该适当地进行重写。
c
- 为其请求基线的 JComponent
width
- 为其获取基线的宽度height
- 为其获取基线的高度
NullPointerException
- 如果 c
为 null
IllegalArgumentException
- 如果宽度或高度 < 0JComponent.getBaseline(int,int)
public Component.BaselineResizeBehavior getBaselineResizeBehavior(JComponent c)
此方法返回 BaselineResizeBehavior.OTHER
。支持基线的子类应该适当地进行重写。
c
- 为其返回调整大小行为的 JComponent
NullPointerException
- 如果 c
为 null
JComponent.getBaseline(int, int)
public int getAccessibleChildrenCount(JComponent c)
Accessible
,那么此方法应返回此对象的子对象数。如果 UI 在可看作组件的屏幕上呈现一些区域,那么它们可能希望重写此方法,但实际组件并不用于呈现那些区域。
注:从 v1.3 开始,建议开发人员调用 Component.AccessibleAWTComponent.getAccessibleChildrenCount()
替代此方法。
getAccessibleChild(javax.swing.JComponent, int)
public Accessible getAccessibleChild(JComponent c, int i)
i
个 Accessible
子对象。如果 UI 在可看作组件的屏幕上呈现一些区域,那么它们可能需要重写此方法,但实际组件并不用于呈现那些区域。
注:从 v1.3 开始,建议开发人员调用 Component.AccessibleAWTComponent.getAccessibleChild()
替代此方法。
i
- 子对象的从零开始的索引
i
个 Accessible
子对象getAccessibleChildrenCount(javax.swing.JComponent)
|
JavaTM Platform Standard Ed. 6 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。