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 | rootPaneJRootPane实例管理这个框架的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.