public class JWindow extends Window implements Accessible, RootPaneContainer
JWindow是可以在用户桌面上的任意位置显示的容器。
它没有标题栏,窗口管理按钮,或者与相关的其他装饰品JFrame ,但它仍然是一个“一等公民”用户的桌面,并且可以在任何地方存在。
JWindow组件包含一个JRootPane作为其唯一的孩子。 contentPane应该是contentPane的任何孩子的JWindow 。 作为一种方便, add , remove和setLayout这个类的方法将被覆盖,所以他们委托给相应方法的调用ContentPane 。 例如,您可以将子组件添加到窗口中,如下所示:
window.add(child);
而孩子将被添加到contentPane。
contentPane将永远不是null 。
尝试将其设置为null将导致JWindow引发异常。
默认的contentPane将有一个BorderLayout管理器。
有关添加,删除和设置LayoutManager的LayoutManager的详细信息,请参阅JWindow 。
请参阅JRootPane文档的完整描述contentPane , glassPane和layeredPane组件。
在多屏幕环境中,您可以在不同的屏幕设备上创建一个JWindow 。 见Window以获取更多信息。
警告: Swing不是线程安全的。 有关更多信息,请参阅Swing's Threading Policy 。
警告:此类的序列化对象与将来的Swing版本不兼容。 当前的序列化支持适用于运行相同版本的Swing的应用程序之间的短期存储或RMI。 从1.4开始,对所有JavaBeans的长期存储的支持已经添加到java.beans包中。 请参阅XMLEncoder 。
JRootPane
| Modifier and Type | Class and Description |
|---|---|
protected class |
JWindow.AccessibleJWindow
这个类实现了可访问性支持
JWindow类。
|
Window.AccessibleAWTWindow, Window.TypeContainer.AccessibleAWTContainerComponent.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy| Modifier and Type | Field and Description |
|---|---|
protected AccessibleContext |
accessibleContext
可访问的上下文属性。
|
protected JRootPane |
rootPane
JRootPane实例管理这个框架的
contentPane和可选的
menuBar ,以及
glassPane 。
|
protected boolean |
rootPaneCheckingEnabled
如果为真,那么
add和
setLayout将被转发到
contentPane 。
|
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH| Constructor and Description |
|---|
JWindow()
创建一个没有指定所有者的窗口。
|
JWindow(Frame owner)
创建具有指定所有者框架的窗口。
|
JWindow(GraphicsConfiguration gc)
创建一个带有指定屏幕设备
GraphicsConfiguration的窗口。
|
JWindow(Window owner)
创建具有指定所有者窗口的窗口。
|
JWindow(Window owner, GraphicsConfiguration gc)
创建一个窗口,其中包含指定的所有者窗口和屏幕设备的
GraphicsConfiguration 。
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
addImpl(Component comp, Object constraints, int index)
添加指定的孩子
Component 。
|
protected JRootPane |
createRootPane()
由构造函数调用方法创建默认值
rootPane 。
|
AccessibleContext |
getAccessibleContext()
获取与此JWindow关联的AccessibleContext。
|
Container |
getContentPane()
返回
Container ,这是该窗口的
contentPane 。
|
Component |
getGlassPane()
返回此窗口的
glassPane Component 。
|
Graphics |
getGraphics()
为此组件创建图形上下文。
|
JLayeredPane |
getLayeredPane()
返回此窗口的
layeredPane对象。
|
JRootPane |
getRootPane()
返回此窗口的
rootPane对象。
|
TransferHandler |
getTransferHandler()
获取
transferHandler属性。
|
protected boolean |
isRootPaneCheckingEnabled()
返回是否向
add和
setLayout的
contentPane 。
|
protected String |
paramString()
返回此
JWindow的字符串表示
JWindow 。
|
void |
remove(Component comp)
从容器中删除指定的组件。
|
void |
repaint(long time, int x, int y, int width, int height)
在time毫秒内
time绘制该组件的
time矩形。
|
void |
setContentPane(Container contentPane)
设置此窗口的
contentPane属性。
|
void |
setGlassPane(Component glassPane)
设置
glassPane属性。
|
void |
setLayeredPane(JLayeredPane layeredPane)
设置
layeredPane属性。
|
void |
setLayout(LayoutManager manager)
设置
LayoutManager 。
|
protected void |
setRootPane(JRootPane root)
为此窗口设置新的
rootPane对象。
|
protected void |
setRootPaneCheckingEnabled(boolean enabled)
设置是否向
add和
setLayout的
contentPane 。
|
void |
setTransferHandler(TransferHandler newHandler)
设置
transferHandler属性,这是一种支持将数据传输到此组件的机制。
|
void |
update(Graphics g)
致电
paint(g) 。
|
protected void |
windowInit()
由构造函数调用正确地初始化
JWindow 。
|
addNotify, addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, processEvent, processWindowEvent, processWindowFocusEvent, processWindowStateEvent, removeNotify, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBackground, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImage, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setOpacity, setShape, setSize, setSize, setType, setVisible, show, toBack, toFrontadd, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusDownCycle, validate, validateTreeaction, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycleprotected JRootPane rootPane
JRootPane实例管理
contentPane和可选的
menuBar为这个框架,以及
glassPane 。
protected boolean rootPaneCheckingEnabled
add和setLayout将被转发到contentPane 。
它最初是假的,但是,当设置为true JWindow构造。
protected AccessibleContext accessibleContext
public JWindow()
这个构造函数将组件的区域属性返回的值JComponent.getDefaultLocale 。
HeadlessException - 如果
GraphicsEnvironment.isHeadless()返回true。
GraphicsEnvironment.isHeadless() ,
Window.isFocusableWindow() ,
JComponent.getDefaultLocale()
public JWindow(GraphicsConfiguration gc)
GraphicsConfiguration创建一个窗口。
此窗口将无法对焦。
这个构造函数将组件的区域属性返回的值JComponent.getDefaultLocale 。
gc -所述GraphicsConfiguration被用于构造与新的窗口;
如果gc为null ,则假定系统默认为GraphicsConfiguration
HeadlessException - 如果
GraphicsEnvironment.isHeadless()返回true。
IllegalArgumentException - 如果
gc不是从屏幕设备。
GraphicsEnvironment.isHeadless() ,
Window.isFocusableWindow() ,
JComponent.getDefaultLocale()
public JWindow(Frame owner)
owner是null ,则将使用共享所有者,并且此窗口将不可对焦。
此外,除非其所有者显示在屏幕上,否则此窗口将无法对焦。
这个构造函数将组件的区域属性返回的值JComponent.getDefaultLocale 。
owner - 显示窗口的框架
HeadlessException - 如果GraphicsEnvironment.isHeadless()返回true。
GraphicsEnvironment.isHeadless() ,
Window.isFocusableWindow() ,
JComponent.getDefaultLocale()
public JWindow(Window owner)
owner为null ,则将使用共享所有者,并且此窗口将不可对焦。
这个构造函数将组件的区域属性返回的值JComponent.getDefaultLocale 。
owner - 显示窗口的窗口
HeadlessException - 如果
GraphicsEnvironment.isHeadless()返回true。
GraphicsEnvironment.isHeadless() ,
Window.isFocusableWindow() ,
JComponent.getDefaultLocale()
public JWindow(Window owner, GraphicsConfiguration gc)
GraphicsConfiguration的窗口。
如果owner是null ,则将使用共享所有者,并且此窗口将不可对焦。
这个构造函数将组件的区域属性返回的值JComponent.getDefaultLocale 。
owner - 显示窗口的窗口
gc -所述GraphicsConfiguration被用于构造与新的窗口;
如果gc为null ,假设系统默认为GraphicsConfiguration ,除非owner也为空,否则将使用来自共享所有者帧的GraphicsConfiguration 。
HeadlessException - 如果
GraphicsEnvironment.isHeadless()返回true。
IllegalArgumentException - 如果
gc不是从屏幕设备。
GraphicsEnvironment.isHeadless() ,
Window.isFocusableWindow() ,
JComponent.getDefaultLocale()
protected void windowInit()
JWindow 。
protected JRootPane createRootPane()
rootPane 。
protected boolean isRootPaneCheckingEnabled()
add和
setLayout是否转接到
contentPane 。
add和setLayout ,则为true;
否则为假
addImpl(java.awt.Component, java.lang.Object, int) , setLayout(java.awt.LayoutManager) , setRootPaneCheckingEnabled(boolean) , RootPaneContainer
public void setTransferHandler(TransferHandler newHandler)
transferHandler属性,这是一种支持将数据传输到此组件中的机制。
使用null如果该组件不支持数据传输操作。
如果系统属性suppressSwingDropSupport (默认值)为false ,并且此组件上的当前下降目标为null或不是用户设置的下拉目标,则此方法将按如下方式更改下降目标:如果newHandler为null ,则将清除掉目标。 如果不是null它会安装一个新的DropTarget 。
注意:当与JWindow一起使用时, TransferHandler仅提供数据导入功能,因为数据导出相关方法当前键入JComponent 。
有关详细信息 ,请参阅Java Tutorial How to Use Drag and Drop and Data Transfer中的一节。
newHandler - 新的
TransferHandler
TransferHandler , getTransferHandler() , Component.setDropTarget(java.awt.dnd.DropTarget)
public TransferHandler getTransferHandler()
transferHandler属性。
transferHandler属性
TransferHandler , setTransferHandler(javax.swing.TransferHandler)
public void update(Graphics g)
paint(g) 。
该方法被覆盖,以防止不必要的调用来清除背景。
update在
Container类
g - 要绘画的
Graphics上下文
Component.update(Graphics)
protected void setRootPaneCheckingEnabled(boolean enabled)
add和
setLayout的
contentPane 。
enabled - 如果
add和
setLayout转发,则为true,如果它们应直接在
JWindow上操作,则为false。
addImpl(java.awt.Component, java.lang.Object, int) , setLayout(java.awt.LayoutManager) , isRootPaneCheckingEnabled() , RootPaneContainer
protected void addImpl(Component comp, Object constraints, int index)
Component 。
该方法被覆盖以有条件地转移到contentPane 。
默认情况下,将儿童添加到contentPane而不是框架,详情请参阅RootPaneContainer 。
addImpl在
Container
comp - 要增强的组件
constraints - 要遵守的约束
index - 指数
IllegalArgumentException - 如果
index无效
IllegalArgumentException - 如果将容器的父项添加到自身
IllegalArgumentException - 如果向
IllegalArgumentException添加窗口
setRootPaneCheckingEnabled(boolean) , RootPaneContainer
public void remove(Component comp)
comp不是rootPane ,这将转发到contentPane 。
如果comp不是JWindow或contentPane的孩子,这将不会做任何事情。
remove在
Container
comp - 要删除的组件
NullPointerException - 如果
comp为空
Container.add(java.awt.Component) , RootPaneContainer
public void setLayout(LayoutManager manager)
setLayout在
Container
manager -
LayoutManager
setRootPaneCheckingEnabled(boolean) , RootPaneContainer
public JRootPane getRootPane()
rootPane对象。
getRootPane在界面
RootPaneContainer
rootPane属性
setRootPane(javax.swing.JRootPane) ,
RootPaneContainer.getRootPane()
protected void setRootPane(JRootPane root)
rootPane对象。
该方法由构造函数调用。
root - 新的
rootPane属性
getRootPane()
public Container getContentPane()
Container ,这是该窗口的
contentPane 。
getContentPane中的
RootPaneContainer
contentPane属性
setContentPane(java.awt.Container) ,
RootPaneContainer.getContentPane()
public void setContentPane(Container contentPane)
contentPane属性。
该方法由构造函数调用。
setContentPane在接口
RootPaneContainer
contentPane - 新的
contentPane
IllegalComponentStateException - (运行时异常)如果内容窗格参数是
null
getContentPane() ,
RootPaneContainer.setContentPane(java.awt.Container)
public JLayeredPane getLayeredPane()
layeredPane对象。
getLayeredPane在接口
RootPaneContainer
layeredPane属性
setLayeredPane(javax.swing.JLayeredPane) ,
RootPaneContainer.getLayeredPane()
public void setLayeredPane(JLayeredPane layeredPane)
layeredPane属性。
该方法由构造函数调用。
setLayeredPane在接口
RootPaneContainer
layeredPane - 新的
layeredPane对象
IllegalComponentStateException - (运行时异常)如果内容窗格参数是
null
getLayeredPane() ,
RootPaneContainer.setLayeredPane(javax.swing.JLayeredPane)
public Component getGlassPane()
glassPane Component 。
getGlassPane在接口
RootPaneContainer
glassPane属性
setGlassPane(java.awt.Component) ,
RootPaneContainer.getGlassPane()
public void setGlassPane(Component glassPane)
glassPane属性。
该方法由构造函数调用。
setGlassPane在界面
RootPaneContainer
glassPane - 此窗口的
glassPane对象
getGlassPane() ,
RootPaneContainer.setGlassPane(java.awt.Component)
public Graphics getGraphics()
null如果组件当前是不可显示。
getGraphics在
Component
null
Component.paint(java.awt.Graphics)
public void repaint(long time,
int x,
int y,
int width,
int height)
time绘制该组件的time矩形。
有关如何处理重绘的详细信息,请参阅RepaintManager 。
repaint在
Component
time - 更新前的最大时间(以毫秒为单位)
x -
x坐标
y -
y坐标
width - 宽度
height - 高度
RepaintManager
protected String paramString()
JWindow的字符串表示JWindow 。
该方法仅用于调试目的,并且返回的字符串的内容和格式可能因实现而异。
返回的字符串可能为空,但可能不是null 。
paramString在
Container
JWindow的字符串表示
JWindow
public AccessibleContext getAccessibleContext()
getAccessibleContext在界面
Accessible
getAccessibleContext在
Window类
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.