- java.lang.Object
-
- javax.swing.plaf.ComponentUI
-
- javax.swing.plaf.LayerUI<V>
-
- 参数类型
-
V-一个超类型中的JLayer的视图分量
- All Implemented Interfaces:
-
Serializable
public class LayerUI<V extends Component> extends ComponentUI implements Serializable
所有JLayer的UI代表的基类。paint(java.awt.Graphics, javax.swing.JComponent)方法执行的绘画JLayer和eventDispatched(AWTEvent, JLayer)方法被通知任何AWTEvent已经通过一个生成S-JLayer或任意子组件。LayerUI与其他组件的UI代表不同,因为它是LookAndFeel独立的,并且在系统LookAndFeel更改时默认情况下不更新。LayerUI的子类可以是无状态的,可以由多个JLayer共享,也可以不共享。- 从以下版本开始:
- 1.7
- 另请参见:
-
JLayer.setUI(LayerUI),JLayer.setView(Component),JLayer.getView(), Serialized Form
-
-
构造方法摘要
构造方法 Constructor 描述 LayerUI()
-
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 voidaddPropertyChangeListener(PropertyChangeListener listener)将PropertyChangeListener添加到侦听器列表。voidaddPropertyChangeListener(String propertyName, PropertyChangeListener listener)将PropertyChangeListener添加到特定属性的侦听器列表中。voidapplyPropertyChange(PropertyChangeEvent evt, JLayer<? extends V> l)通知LayerUI当其任何属性被更改,并允许更新JLayer这个LayerUI实例被设置为。voiddoLayout(JLayer<? extends V> l)导致传递的JLayer实例布局其组件。voideventDispatched(AWTEvent e, JLayer<? extends V> l)处理AWTEvents为JLayer及其 所有后代到这个LayerUI实例。protected voidfirePropertyChange(String propertyName, Object oldValue, Object newValue)支持报告对象属性的绑定属性更改。intgetBaseline(JComponent c, int width, int height)如果JLayer的视图组件不是null,则调用视图的getBaseline()方法。Component.BaselineResizeBehaviorgetBaselineResizeBehavior(JComponent c)如果JLayer的视图组件不是null,则返回视图getBaselineResizeBehavior()方法的结果。DimensiongetMaximumSize(JComponent c)如果JLayer的视图组件不是null,则返回视图getMaximumSize()方法的结果。DimensiongetMinimumSize(JComponent c)如果JLayer的视图组件不是null,则返回视图getMinimalSize()方法的结果。DimensiongetPreferredSize(JComponent c)如果JLayer的视图组件不是null,则返回视图getPreferredSize()方法的结果。PropertyChangeListener[]getPropertyChangeListeners()返回在此组件上注册的所有属性更改侦听器的数组。PropertyChangeListener[]getPropertyChangeListeners(String propertyName)返回与named属性相关联的所有侦听器的数组。booleanimageUpdate(Image img, int infoflags, int x, int y, int w, int h, JLayer<? extends V> l)将其功能委托给继承自JLayer的基类的JLayer.imageUpdate方法的默认实现。voidinstallUI(JComponent c)配置JLayer这个LayerUI设置为。voidpaint(Graphics g, JComponent c)绘制指定的组件。voidpaintImmediately(int x, int y, int width, int height, JLayer<? extends V> l)在JLayer指定的区域JLayerLayerUI设置为立即。protected voidprocessComponentEvent(ComponentEvent e, JLayer<? extends V> l)处理在JLayer或其任何子组件上发生的组件事件。protected voidprocessFocusEvent(FocusEvent e, JLayer<? extends V> l)处理JLayer或其任何子组件发生的焦点事件。protected voidprocessHierarchyBoundsEvent(HierarchyEvent e, JLayer<? extends V> l)进程层次结构限制事件发生在JLayer或其任何子组件上。protected voidprocessHierarchyEvent(HierarchyEvent e, JLayer<? extends V> l)处理在JLayer或其任何子组件上发生的层次结构事件。protected voidprocessInputMethodEvent(InputMethodEvent e, JLayer<? extends V> l)处理在JLayer或其任何子组件上发生的输入事件。protected voidprocessKeyEvent(KeyEvent e, JLayer<? extends V> l)处理JLayer或其任何子组件发生的关键事件。protected voidprocessMouseEvent(MouseEvent e, JLayer<? extends V> l)处理发生在JLayer或其任何子组件上的鼠标事件。protected voidprocessMouseMotionEvent(MouseEvent e, JLayer<? extends V> l)处理在JLayer或其任何子组件上发生的鼠标运动事件。protected voidprocessMouseWheelEvent(MouseWheelEvent e, JLayer<? extends V> l)处理在JLayer或其任何子组件上发生的鼠标滚轮事件。voidremovePropertyChangeListener(PropertyChangeListener listener)从侦听器列表中移除PropertyChangeListener。voidremovePropertyChangeListener(String propertyName, PropertyChangeListener listener)从侦听器列表中删除特定属性的PropertyChangeListener。voiduninstallUI(JComponent c)反转以前在installUI(JComponent)中设置的配置。voidupdateUI(JLayer<? extends V> l)-
Methods inherited from class javax.swing.plaf.ComponentUI
contains, createUI, getAccessibleChild, getAccessibleChildrenCount, update
-
-
-
-
方法详细信息
-
paint
public void paint(Graphics g, JComponent c)
绘制指定的组件。 子类应该覆盖此方法,并使用指定的Graphics对象来呈现组件的内容。默认实现会按照原样绘制已传递的组件。
- 重写:
-
paint在ComponentUI - 参数
-
g- 要绘画的Graphics上下文 -
c- 正在涂漆的组件 - 另请参见:
-
ComponentUI.update(java.awt.Graphics, javax.swing.JComponent)
-
eventDispatched
public void eventDispatched(AWTEvent e, JLayer<? extends V> l)
处理AWTEvents为JLayer及其所有后代到这个LayerUI实例。为了使
AWTEvent个特定类型的,你叫JLayer.setLayerEventMask(long)在installUI(javax.swing.JComponent)并设置图层事件面具0在uninstallUI(javax.swing.JComponent)之后。 默认情况下,该方法为给定类的事件调用适当的process<eventtype>Event方法。注意事项只处理可显示的
JLayers。- 参数
-
e- 要发送的事件 -
l- 此LayerUI设置的图层 - 另请参见:
-
JLayer.setLayerEventMask(long),Component.isDisplayable(),processComponentEvent(java.awt.event.ComponentEvent, javax.swing.JLayer<? extends V>),processFocusEvent(java.awt.event.FocusEvent, javax.swing.JLayer<? extends V>),processKeyEvent(java.awt.event.KeyEvent, javax.swing.JLayer<? extends V>),processMouseEvent(java.awt.event.MouseEvent, javax.swing.JLayer<? extends V>),processMouseMotionEvent(java.awt.event.MouseEvent, javax.swing.JLayer<? extends V>),processInputMethodEvent(java.awt.event.InputMethodEvent, javax.swing.JLayer<? extends V>),processHierarchyEvent(java.awt.event.HierarchyEvent, javax.swing.JLayer<? extends V>),processMouseWheelEvent(java.awt.event.MouseWheelEvent, javax.swing.JLayer<? extends V>)
-
processComponentEvent
protected void processComponentEvent(ComponentEvent e, JLayer<? extends V> l)
处理在JLayer或其任何子组件上发生的组件事件。除非为
JLayer对象启用组件事件,否则不调用此方法,此LayerUI设置为。 组件事件在覆盖的installUI(javax.swing.JComponent)方法中启用,然后应在uninstallUI(javax.swing.JComponent)方法中禁用组件事件。public void installUI(JComponent c) { super.installUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(AWTEvent.COMPONENT_EVENT_MASK); } public void uninstallUI(JComponent c) { super.uninstallUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(0); }- 参数
-
e- 要处理的ComponentEvent -
l- 这个LayerUI实例的层被设置为 - 另请参见:
-
JLayer.setLayerEventMask(long),installUI(javax.swing.JComponent),uninstallUI(javax.swing.JComponent)
-
processFocusEvent
protected void processFocusEvent(FocusEvent e, JLayer<? extends V> l)
处理JLayer或其任何子组件发生的焦点事件。除非对
JLayer对象启用了焦点事件,否则不会调用此方法,此LayerUI设置为。 焦点事件在覆盖的installUI(javax.swing.JComponent)方法中启用,并应在uninstallUI(javax.swing.JComponent)之后禁用。public void installUI(JComponent c) { super.installUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(AWTEvent.FOCUS_EVENT_MASK); } public void uninstallUI(JComponent c) { super.uninstallUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(0); }- 参数
-
e- 要处理的FocusEvent -
l- 这个LayerUI实例的层被设置为 - 另请参见:
-
JLayer.setLayerEventMask(long),installUI(javax.swing.JComponent),uninstallUI(javax.swing.JComponent)
-
processKeyEvent
protected void processKeyEvent(KeyEvent e, JLayer<? extends V> l)
处理JLayer或其任何子组件发生的关键事件。除非为
JLayer对象启用了关键事件,否则不会调用此方法,此LayerUI设置为。 密钥事件在覆盖的installUI(javax.swing.JComponent)方法中启用,并应在uninstallUI(javax.swing.JComponent)之后禁用。public void installUI(JComponent c) { super.installUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(AWTEvent.KEY_EVENT_MASK); } public void uninstallUI(JComponent c) { super.uninstallUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(0); }- 参数
-
e- 要处理的KeyEvent -
l- 这个LayerUI实例的层被设置为 - 另请参见:
-
JLayer.setLayerEventMask(long),installUI(javax.swing.JComponent),uninstallUI(javax.swing.JComponent)
-
processMouseEvent
protected void processMouseEvent(MouseEvent e, JLayer<? extends V> l)
处理发生在JLayer或其任何子组件上的鼠标事件。除非为
JLayer对象启用鼠标事件,否则不会调用此方法,此LayerUI设置为。 鼠标事件在覆盖的installUI(javax.swing.JComponent)方法中启用,并应在uninstallUI(javax.swing.JComponent)方法之后禁用。public void installUI(JComponent c) { super.installUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(AWTEvent.MOUSE_EVENT_MASK); } public void uninstallUI(JComponent c) { super.uninstallUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(0); }- 参数
-
e- 要处理的MouseEvent -
l- 这个LayerUI实例的层被设置为 - 另请参见:
-
JLayer.setLayerEventMask(long),installUI(javax.swing.JComponent),uninstallUI(javax.swing.JComponent)
-
processMouseMotionEvent
protected void processMouseMotionEvent(MouseEvent e, JLayer<? extends V> l)
处理JLayer或其任何子组件发生的鼠标移动事件。除非为
JLayer对象启用鼠标运动事件,否则不会调用此方法,此LayerUI设置为。 鼠标运动事件在覆盖的installUI(javax.swing.JComponent)方法中启用,并应在uninstallUI(javax.swing.JComponent)之后禁用。public void installUI(JComponent c) { super.installUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(AWTEvent.MOUSE_MOTION_EVENT_MASK); } public void uninstallUI(JComponent c) { super.uninstallUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(0); }- 参数
-
e- 要处理的MouseEvent -
l- 这个LayerUI实例的层被设置为 - 另请参见:
-
JLayer.setLayerEventMask(long),installUI(javax.swing.JComponent),uninstallUI(javax.swing.JComponent)
-
processMouseWheelEvent
protected void processMouseWheelEvent(MouseWheelEvent e, JLayer<? extends V> l)
处理JLayer或其任何子组件发生的鼠标滚轮事件。除非为
JLayer对象启用鼠标滚轮事件,否则不会调用此方法,此LayerUI设置为。 鼠标滚轮事件在覆盖的installUI(javax.swing.JComponent)方法中启用,并应在uninstallUI(javax.swing.JComponent)之后禁用。public void installUI(JComponent c) { super.installUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(AWTEvent.MOUSE_WHEEL_EVENT_MASK); } public void uninstallUI(JComponent c) { super.uninstallUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(0); }- 参数
-
e- 要处理的MouseEvent -
l- 这个LayerUI实例的层被设置为 - 另请参见:
-
JLayer.setLayerEventMask(long),installUI(javax.swing.JComponent),uninstallUI(javax.swing.JComponent)
-
processInputMethodEvent
protected void processInputMethodEvent(InputMethodEvent e, JLayer<? extends V> l)
处理在JLayer或其任何子组件上发生的输入事件。除非为
JLayer对象启用输入事件,否则不会调用此方法,此LayerUI设置为。 输入事件在覆盖的installUI(javax.swing.JComponent)方法中启用,并应在uninstallUI(javax.swing.JComponent)之后禁用。public void installUI(JComponent c) { super.installUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(AWTEvent.INPUT_METHOD_EVENT_MASK); } public void uninstallUI(JComponent c) { super.uninstallUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(0); }- 参数
-
e- 要处理的InputMethodEvent -
l- 这个LayerUI实例的层被设置为 - 另请参见:
-
JLayer.setLayerEventMask(long),installUI(javax.swing.JComponent),uninstallUI(javax.swing.JComponent)
-
processHierarchyEvent
protected void processHierarchyEvent(HierarchyEvent e, JLayer<? extends V> l)
处理在JLayer或其任何子组件上发生的层次结构事件。除非为
JLayer对象启用层次结构事件,否则不调用此方法,此LayerUI设置为。 层次结构事件在覆盖的installUI(javax.swing.JComponent)方法中启用,之后应在uninstallUI(javax.swing.JComponent)方法中禁用。public void installUI(JComponent c) { super.installUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(AWTEvent.HIERARCHY_EVENT_MASK); } public void uninstallUI(JComponent c) { super.uninstallUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(0); }- 参数
-
e- 要处理的HierarchyEvent -
l- 这个LayerUI实例的层被设置为 - 另请参见:
-
JLayer.setLayerEventMask(long),installUI(javax.swing.JComponent),uninstallUI(javax.swing.JComponent)
-
processHierarchyBoundsEvent
protected void processHierarchyBoundsEvent(HierarchyEvent e, JLayer<? extends V> l)
进程层次结构限制事件发生在JLayer或其任何子组件上。除非为
JLayer对象启用了层次结构限制事件,否则不会调用此方法,此LayerUI设置为。 层次约束事件在覆盖的installUI(javax.swing.JComponent)方法中启用,并应在uninstallUI(javax.swing.JComponent)方法之后禁用。public void installUI(JComponent c) { super.installUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(AWTEvent.HIERARCHY_BOUNDS_EVENT_MASK); } public void uninstallUI(JComponent c) { super.uninstallUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(0); }- 参数
-
e- 要处理的HierarchyEvent -
l- 这个LayerUI实例的层被设置为 - 另请参见:
-
JLayer.setLayerEventMask(long),installUI(javax.swing.JComponent),uninstallUI(javax.swing.JComponent)
-
installUI
public void installUI(JComponent c)
配置JLayer设置为LayerUI。 默认实现将通过的JLayer组件注册为PropertyChangeListener用于此LayerUI的属性更改。- 重写:
-
installUI中的ComponentUI - 参数
-
c- 正在安装此UIc的JLayer组件 - 另请参见:
-
ComponentUI.uninstallUI(javax.swing.JComponent),JComponent.setUI(javax.swing.plaf.ComponentUI),JComponent.updateUI()
-
uninstallUI
public void uninstallUI(JComponent c)
反转以前在installUI(JComponent)中设置的配置。 默认实现注销通过JLayer成分为PropertyChangeListener本的属性更改LayerUI。- 重写:
-
uninstallUI在ComponentUI - 参数
-
c- 从中删除此UIc的组件。 - 另请参见:
-
ComponentUI.installUI(javax.swing.JComponent),JComponent.updateUI()
-
addPropertyChangeListener
public void addPropertyChangeListener(PropertyChangeListener listener)
将PropertyChangeListener添加到侦听器列表。 监听器注册该类的所有绑定属性。如果
listener为null,则不会抛出异常,也不会执行任何操作。
-
removePropertyChangeListener
public void removePropertyChangeListener(PropertyChangeListener listener)
从侦听器列表中移除PropertyChangeListener。 该方法应用于删除已为此类的所有绑定属性注册的PropertyChangeListeners。如果
listener为null,则不会抛出异常,也不会执行任何操作。- 参数
-
listener- 要删除的PropertyChangeListener - 另请参见:
-
addPropertyChangeListener(java.beans.PropertyChangeListener),getPropertyChangeListeners(),removePropertyChangeListener(String, PropertyChangeListener)
-
getPropertyChangeListeners
public PropertyChangeListener[] getPropertyChangeListeners()
返回在此组件上注册的所有属性更改侦听器的数组。- 结果
-
所有这个ui的
PropertyChangeListeners或一个空数组,如果没有属性更改侦听器当前注册 - 另请参见:
-
addPropertyChangeListener(java.beans.PropertyChangeListener),removePropertyChangeListener(java.beans.PropertyChangeListener),getPropertyChangeListeners(String)
-
addPropertyChangeListener
public void addPropertyChangeListener(String propertyName, PropertyChangeListener listener)
将PropertyChangeListener添加到特定属性的侦听器列表中。如果
propertyName或listener为null,则不会抛出任何异常,也不会采取任何措施。- 参数
-
propertyName- 上面列出的属性名称之一 -
listener- 要添加的属性更改侦听器 - 另请参见:
-
removePropertyChangeListener(String, PropertyChangeListener),getPropertyChangeListeners(String),addPropertyChangeListener(String, PropertyChangeListener)
-
removePropertyChangeListener
public void removePropertyChangeListener(String propertyName, PropertyChangeListener listener)
从侦听器列表中删除特定属性的PropertyChangeListener。 该方法应用于删除已注册为特定绑定属性的PropertyChangeListener。如果
propertyName或listener为null,则不会抛出异常并且不采取任何操作。- 参数
-
propertyName- 有效的属性名称 -
listener- 要删除的PropertyChangeListener - 另请参见:
-
addPropertyChangeListener(String, PropertyChangeListener),getPropertyChangeListeners(String),removePropertyChangeListener(PropertyChangeListener)
-
getPropertyChangeListeners
public PropertyChangeListener[] getPropertyChangeListeners(String propertyName)
返回与named属性相关联的所有侦听器的数组。- 参数
-
propertyName- 正在收听的财产的名称 - 结果
-
所有的
PropertyChangeListeners与命名属性相关联; 如果没有添加这样的侦听器,或者如果propertyName是null,则返回一个空数组 - 另请参见:
-
addPropertyChangeListener(String, PropertyChangeListener),removePropertyChangeListener(String, PropertyChangeListener),getPropertyChangeListeners()
-
firePropertyChange
protected void firePropertyChange(String propertyName, Object oldValue, Object newValue)
支持报告对象属性的绑定属性更改。 当绑定属性已更改时,可以调用此方法,并且将向适当的PropertyChangeEvent发送适当的PropertyChangeEvent。- 参数
-
propertyName- 其值已更改的属性 -
oldValue- 该物业的以前的价值 -
newValue- 该物业的新价值
-
applyPropertyChange
public void applyPropertyChange(PropertyChangeEvent evt, JLayer<? extends V> l)
通知LayerUI当其任何属性被更改,并允许更新每JLayer这个LayerUI实例被设置为。- 参数
-
evt- 由此LayerUI生成的LayerUI -
l-在JLayer这LayerUI设为
-
getBaseline
public int getBaseline(JComponent c, int width, int height)
如果JLayer的视图组件不是null,则调用视图的getBaseline()方法。 否则,将调用默认实现。- 重写:
-
getBaseline在ComponentUI - 参数
-
c-JLayer返回基准调整大小行为 -
width- 获取基准的宽度 -
height- 获取基准的高度 - 结果
- 基线或值<0表示没有合理的基线
- 另请参见:
-
JComponent.getBaseline(int,int)
-
getBaselineResizeBehavior
public Component.BaselineResizeBehavior getBaselineResizeBehavior(JComponent c)
如果JLayer的视图组件不是null,则返回视图getBaselineResizeBehavior()方法的结果。 否则,将调用默认实现。- 重写:
-
getBaselineResizeBehavior在ComponentUI - 参数
-
c-JLayer以返回基准调整大小行为 - 结果
- 一个枚举,指示基准随着组件大小的变化而改变
- 另请参见:
-
JComponent.getBaseline(int, int)
-
doLayout
public void doLayout(JLayer<? extends V> l)
导致传递的JLayer实例布局其组件。- 参数
-
l- 要安装此UIJLayer组件JLayer
-
getPreferredSize
public Dimension getPreferredSize(JComponent c)
如果JLayer的视图组件不是null,则返回视图getPreferredSize()方法的结果。 否则,将使用默认实现。- 重写:
-
getPreferredSize在ComponentUI - 参数
-
c-JLayer返回首选大小 - 结果
-
通过的
JLayer首选尺寸 - 另请参见:
-
JComponent.getPreferredSize(),LayoutManager.preferredLayoutSize(java.awt.Container)
-
getMinimumSize
public Dimension getMinimumSize(JComponent c)
如果JLayer的视图组件不是null,则返回视图getMinimalSize()方法的结果。 否则,将使用默认实现。- 重写:
-
getMinimumSize在ComponentUI - 参数
-
c-JLayer以返回首选大小 - 结果
-
最小尺寸为通过
JLayer - 另请参见:
-
JComponent.getMinimumSize(),LayoutManager.minimumLayoutSize(java.awt.Container),ComponentUI.getPreferredSize(javax.swing.JComponent)
-
getMaximumSize
public Dimension getMaximumSize(JComponent c)
如果JLayer的视图组件不是null,则返回视图getMaximumSize()方法的结果。 否则,将使用默认实现。- 重写:
-
getMaximumSize在ComponentUI - 参数
-
c-JLayer返回首选大小 - 结果
-
最大尺寸为
JLayer - 另请参见:
-
JComponent.getMaximumSize(),LayoutManager2.maximumLayoutSize(java.awt.Container)
-
paintImmediately
public void paintImmediately(int x, int y, int width, int height, JLayer<? extends V> l)JLayer在JLayer的指定区域,此LayerUI设置为立即。当需要更改脏区域时,该方法将被覆盖。 默认实现将其功能委托给
JComponent.paintImmediately(int, int, int, int)。- 参数
-
x- 要绘制的区域的x值 -
y- 要绘制的区域的y值 -
width- 要涂漆的区域的宽度 -
height- 要涂漆的区域的高度 -
l- 一个JLayer组件 - 另请参见:
-
JComponent.paintImmediately(int, int, int, int)
-
imageUpdate
public boolean imageUpdate(Image img, int infoflags, int x, int y, int w, int h, JLayer<? extends V> l)
将其功能委托给继承自JLayer的基类的JLayer.imageUpdate方法的默认实现。该方法将被覆盖而不是
JLayer.imageUpdate。注意:此方法通常不在事件调度线程上调用。
- 参数
-
img- 正在观察的图像 -
infoflags- 有关信息,请参阅imageUpdate -
x- x坐标 -
y- y坐标 -
w- 宽度 -
h- 高度 -
l- 一个JLayer组件 - 结果
- false if the infoflags indicate that the image is completely loaded; true otherwise
-
-