V
-
JLayer
的视图组件的类型
public final class JLayer<V extends Component> extends JComponent implements Scrollable, PropertyChangeListener, Accessible
JLayer
是Swing组件使您能够实现各种先进的涂装效果以及接收境内产生的所有
AWTEvent
s通知通用装饰。
JLayer
代表绘画和输入事件到LayerUI
对象处理,执行实际的装饰。
风俗画实现在LayerUI
和事件通知工作的jlayer本身及其所有子组件。这种组合使您能够通过添加新的高级功能,如临时锁定的层次结构,复合组件的数据提示,增强鼠标滚动等,以丰富现有的组件,等等。
JLayer
是一个好的解决方法如果你只需要做的风俗画在复合构件或捕捉输入事件从它的子组件。
进口javax.摆动。*;进口javax.swing.plaf.layerui;进口java AWT *;公共课jlayersample {私有静态jlayer JComponent createlayer() { > layerui =新layerui <组件> (){public void paint(Graphics g,JComponent C){/油漆层为超级。油漆(G,C);用半透明的绿色填充它g.setcolor(新的颜色(0,128,0,128));g.fillrect(0,0,getwidth() C,C getheight());}公共无效installui(JComponent C){超级installui(C);/ /使能层的子事件鼠标运动((JLayer)C)。setlayereventmask(awtevent。mouse_motion_event_mask);}公共无效uninstallui(JComponent C){超级uninstallui(C);/重置图层事件屏蔽((JLayer)(0)setlayereventmask C);}//重载的方法引起mousemotion事件公共无效eventdispatched(awtevent E,JLayer <?扩展JComponent > L){系统的输入(“awtevent检测:“+ E);}};/创建一个组件来装饰层JPanel面板=新jpanel();面板。添加(新JButton(“JButton”));//创建使用我们的自定义layerui面板层新< <返回jlayer jcomponent> (面板、layerui);}私人createandshowgui() { static void最后的JFrame框架=新jframe();框架。setdefaultcloseoperation(JFrame。exit_on_close);/与该层和任何其他摆动部件的工作添加(createlayer())框架;框架组量(200,200);框架setlocationrelativeto(空);框setVisible(true);}public static void main(String [] args){抛出异常swingutilities。invokeandwait(新runnable() {run() { public voidcreateandshowgui();}});}} 返回jlayer> 组件>注:
JLayer
不支持下列方法:使用任何他们会造成
UnsupportedOperationException
被
Container.add(java.awt.Component)
Container.add(String, java.awt.Component)
Container.add(java.awt.Component, int)
Container.add(java.awt.Component, Object)
Container.add(java.awt.Component, Object, int)
JLayer
使用
setView(Component)
或
setGlassPane(JPanel)
。
JLayer(Component)
,
setView(Component)
,
getView()
,
LayerUI
,
JLayer(Component, LayerUI)
,
setUI(javax.swing.plaf.LayerUI)
,
getUI()
JComponent.AccessibleJComponent
Container.AccessibleAWTContainer
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
Constructor and Description |
---|
JLayer()
|
JLayer(V view)
创建一个新的默认
LayerUI
JLayer 对象。
|
JLayer(V view, LayerUI<V> ui)
创建一个新的与指定的视图组件和
LayerUI 对象
JLayer 对象。
|
Modifier and Type | Method and Description |
---|---|
protected void |
addImpl(Component comp, Object constraints, int index)
此方法不受支持的
JLayer 始终把
UnsupportedOperationException
|
void |
addNotify()
通知这个组件,它现在有一个父组件。
|
JPanel |
createGlassPane()
通过构造函数的方法来创建一个默认的
glassPane 。
|
void |
doLayout()
代表们的
LayerUI.doLayout(JLayer) 方法其功能,如果
LayerUI 设置。
|
AccessibleContext |
getAccessibleContext()
获取与此相关的accessiblecontext
JLayer 。
|
JPanel |
getGlassPane()
返回
JLayer 的glasspane组件或
null 。
|
long |
getLayerEventMask()
返回的事件掩码位图接受这
JLayer 及其
LayerUI 。
|
Dimension |
getPreferredScrollableViewportSize()
返回一个视图的视图组件的首选大小。
|
int |
getScrollableBlockIncrement(Rectangle visibleRect, int orientation, int direction)
返回一个滚动增量,这是所需的组件显示逻辑行或列,以完全暴露一个行或列,这取决于方向的值。
|
boolean |
getScrollableTracksViewportHeight()
返回
false 表示视口的高度不确定该层的高度,除非该层的首选高度小于视的高度。
|
boolean |
getScrollableTracksViewportWidth()
返回
false 显示视口的宽度不确定该层的宽度,除非该层的首选宽度小于视口的宽度。
|
int |
getScrollableUnitIncrement(Rectangle visibleRect, int orientation, int direction)
返回一个滚动增量,这是所需的组件显示逻辑行或列,以完全暴露一个新的行或列,这取决于方向的值。
|
LayerUI<? super V> |
getUI()
返回此
JLayer 的
LayerUI 。
|
V |
getView()
返回
JLayer 的视图组件或
null 。
|
boolean |
isOptimizedDrawingEnabled()
的
JLayer 重写此方法的默认实现(在
JComponent )返回
false 。
|
protected boolean |
isPaintingOrigin()
总是返回
true 导致绘画起源于
JLayer ,或其祖先之一。
|
void |
paint(Graphics g)
代表所有的绘画对象的
LayerUI 。
|
protected void |
paintComponent(Graphics g)
这种方法是空的,因为所有的画是由
paint(Graphics) 和
ComponentUI.update(Graphics, JComponent) 方法
|
void |
paintImmediately(int x, int y, int w, int h)
代表们的
LayerUI.paintImmediately(int, int, int, int, JLayer) 方法其功能,如果
LayerUI 设置。
|
void |
propertyChange(PropertyChangeEvent evt)
当改变绑定属性时,这种方法会被调用。
|
void |
remove(Component comp)
从该容器中移除指定的组件。
|
void |
removeAll()
从这个容器中移除所有的组件。
|
void |
removeNotify()
通知这个组件,它不再有父组件。
|
void |
setBorder(Border border)
非
null 边界,或非零的插图,不支持,以防止该组件的几何变得足够复杂的抑制子的
LayerUI 类。
|
void |
setGlassPane(JPanel glassPane)
集
JLayer 的glasspane组件,可
null 。
|
void |
setLayerEventMask(long layerEventMask)
使事件jlayer和
它所有的子孙由指定的事件掩码定义的参数被传递到
LayerUI.eventDispatched(AWTEvent, JLayer) 方法。
|
void |
setLayout(LayoutManager mgr)
设置此容器的布局管理器。
|
void |
setUI(LayerUI<? super V> ui)
集
LayerUI 进行绘画和接收输入事件这
JLayer 。
|
void |
setView(V view)
集
JLayer 的视图组件,可
null 。
|
void |
updateUI()
代表们的
LayerUI.updateUI(JLayer) 方法其功能,如果
LayerUI 设置。
|
addAncestorListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paintBorder, paintChildren, paintImmediately, paramString, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
add, add, add, add, add, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, transferFocusDownCycle, validate, validateTree
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
public JLayer()
public JLayer(V view)
LayerUI
JLayer
对象。
view
-被这
JLayer
装饰构件
setUI(javax.swing.plaf.LayerUI<? super V>)
public V getView()
JLayer
的视图组件或
null
。
JLayer
的视图组件或
null
如果不存在
setView(Component)
public void setView(V view)
JLayer
的视图组件,可
null
。
view
-这
JLayer
视图组件
getView()
public void setUI(LayerUI<? super V> ui)
LayerUI
进行绘画和接收输入事件这
JLayer
。
ui
-这
JLayer
的
LayerUI
public JPanel getGlassPane()
JLayer
的glasspane组件或
null
。
JLayer
的glasspane组件或
null
如果不存在
setGlassPane(JPanel)
public void setGlassPane(JPanel glassPane)
JLayer
的glasspane组件,可
null
。
glassPane
-这
JLayer
的glasspane组件
getGlassPane()
public JPanel createGlassPane()
glassPane
。默认情况下,此方法创建可见性设置为true,不透明度设置为false新JPanel。
glassPane
public void setLayout(LayoutManager mgr)
注意:如果mgr
是non-null
,该方法将抛出一个异常作为布局管理器不支持在一个JLayer
。
setLayout
方法重写,继承类
Container
mgr
-指定的布局管理器
IllegalArgumentException
-此方法不受支持
Container.doLayout()
,
Container.getLayout()
,
Container.invalidate()
public void setBorder(Border border)
null
边界,或非零的插图,不支持,以防止该组件的几何变得足够复杂的抑制子的
LayerUI
类。要创建一个有边界
JLayer
,将它添加到一个
JPanel
有边界。
注意:如果border
是non-null
,该方法将抛出一个异常作为边界不支持在一个JLayer
。
setBorder
方法重写,继承类
JComponent
border
-
Border
设置
IllegalArgumentException
-此方法不受支持
Border
,
CompoundBorder
protected void addImpl(Component comp, Object constraints, int index)
JLayer
始终把
UnsupportedOperationException
addImpl
方法重写,继承类
Container
comp
-要添加的组件
constraints
物体表达这个组件的布局约束
index
-在列表容器的位置插入成分,其中
-1
意味着追加到最后
UnsupportedOperationException
-此方法不受支持
setView(Component)
,
setGlassPane(JPanel)
public void remove(Component comp)
removeLayoutComponent
。
这种方法改变布局的相关信息,因此,无效的组件层次结构。如果容器已被显示,则该层次结构必须在其后进行验证,以反映更改后的情况。
remove
方法重写,继承类
Container
comp
-要移除的组件
Container.add(java.awt.Component)
,
Container.invalidate()
,
Container.validate()
,
Container.remove(int)
public void removeAll()
removeLayoutComponent
。
这种方法改变布局的相关信息,因此,无效的组件层次结构。如果容器已被显示,则该层次结构必须在其后进行验证,以反映更改后的情况。
removeAll
方法重写,继承类
Container
Container.add(java.awt.Component)
,
Container.remove(int)
,
Container.invalidate()
protected boolean isPaintingOrigin()
true
导致绘画起源于
JLayer
,或其祖先之一。
isPaintingOrigin
方法重写,继承类
JComponent
JComponent.isPaintingOrigin()
public void paintImmediately(int x, int y, int w, int h)
LayerUI.paintImmediately(int, int, int, int, JLayer)
方法其功能,如果
LayerUI
设置。
paintImmediately
方法重写,继承类
JComponent
x
- X值的区域被涂
y
-区域涂成Y值
w
-区域被涂的宽度
h
-区域被画的高度
JComponent.repaint(long, int, int, int, int)
,
JComponent.isPaintingOrigin()
protected void paintComponent(Graphics g)
paint(Graphics)
和
ComponentUI.update(Graphics, JComponent)
方法
paintComponent
方法重写,继承类
JComponent
g
-保护
Graphics
对象
JComponent.paint(java.awt.Graphics)
,
ComponentUI
public boolean isOptimizedDrawingEnabled()
JLayer
重写此方法的默认实现(在
JComponent
)返回
false
。这保证了绘制机械将调用
JLayer
的
paint
实施而不是消息的
JLayer
儿童直接。
isOptimizedDrawingEnabled
方法重写,继承类
JComponent
public void propertyChange(PropertyChangeEvent evt)
propertyChange
接口
PropertyChangeListener
evt
- PropertyChangeEvent对象描述事件源和性质已经改变。
public void setLayerEventMask(long layerEventMask)
LayerUI.eventDispatched(AWTEvent, JLayer)
方法。
传递事件提供LayerUI
定于本JLayer
和JLayer
可显示。
下面的示例演示如何在LayerUI
实现正确地使用这种方法:
公共无效installui(JComponent C){超级installui(C);jlayer L =(jlayer)C;/ / LayerUI只接收关键和焦点事件l.setlayereventmask(awtevent.key_event_mask | awtevent。focus_event_mask);}公共无效uninstallui(JComponent C){超级uninstallui(C);jlayer L =(jlayer)C;/ / jlayer必须返回到它的初始状态(0)l.setlayereventmask;}默认
JLayer
没有事件及其事件的面具是
0
。
layerEventMask
-事件类型接收的位掩码
getLayerEventMask()
,
LayerUI.eventDispatched(AWTEvent, JLayer)
,
Component.isDisplayable()
public long getLayerEventMask()
JLayer
及其
LayerUI
这意味着LayerUI.eventDispatched(AWTEvent, JLayer)
方法只会接收到的事件掩码匹配事件。
默认情况下JLayer
没有事件。
JLayer
public void updateUI()
LayerUI.updateUI(JLayer)
方法其功能,如果
LayerUI
设置。
public Dimension getPreferredScrollableViewportSize()
如果这一层的视图组件实现Scrollable
,这种方法代表视图组件实现。
getPreferredScrollableViewportSize
接口
Scrollable
Scrollable
public int getScrollableBlockIncrement(Rectangle visibleRect, int orientation, int direction)
如果这一层的视图组件实现Scrollable
,这种方法代表视图组件实现。
getScrollableBlockIncrement
接口
Scrollable
visibleRect
-视图的视口内的可见区域
orientation
- swingconstants.vertical或swingconstants.horizontal。
direction
-小于零的滚动/左,大于零的下/右。
Scrollable
public boolean getScrollableTracksViewportHeight()
false
表示视口的高度不确定该层的高度,除非该层的首选高度小于视的高度。
如果这一层的视图组件实现Scrollable
,这种方法代表视图组件实现。
getScrollableTracksViewportHeight
接口
Scrollable
Scrollable
public boolean getScrollableTracksViewportWidth()
false
显示视口的宽度不确定该层的宽度,除非该层的首选宽度小于视口的宽度。
如果这一层的视图组件实现Scrollable
,这种方法代表视图组件实现。
getScrollableTracksViewportWidth
接口
Scrollable
Scrollable
public int getScrollableUnitIncrement(Rectangle visibleRect, int orientation, int direction)
滚动的容器,如JScrollPane
,将使用此方法每次用户请求一个单元滚动。
如果这一层的视图组件实现Scrollable
,这种方法代表视图组件实现。
getScrollableUnitIncrement
接口
Scrollable
visibleRect
-视图的视口内的可见区域
orientation
- swingconstants.vertical或swingconstants.horizontal。
direction
-小于零的滚动/左,大于零的下/右。
Scrollable
public void addNotify()
KeyboardAction
事件监听器。这种方法被内部调用的工具包,不应该直接调用程序。
public void removeNotify()
KeyboardAction
s设置在链父组件被移除。这种方法被内部调用的工具包,不应该直接调用程序。
public void doLayout()
LayerUI.doLayout(JLayer)
方法其功能,如果
LayerUI
设置。
public AccessibleContext getAccessibleContext()
JLayer
。
getAccessibleContext
接口
Accessible
getAccessibleContext
方法重写,继承类
Component
JLayer
。
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.