java.lang.Object java.awt.Component java.awt.Container java.awt.Window javax.swing.JWindow
public class JWindow
JWindow
是一个容器,可以显示在用户桌面上的任何位置。它没有标题栏、窗口管理按钮或者其他与 JFrame
关联的修饰,但它仍然是用户桌面的“一类居民”,可以存在于桌面上的任何位置。
JWindow
组件包含一个 JRootPane
作为其仅有的子组件。contentPane
应为 JWindow
的所有子窗口的父窗口。作为一个便捷的 add
及其变体,remove
和 setLayout
已被重写并根据需要转发到 contentPane
。这意味着您可以写入:
window.add(child);该子窗口也被添加到 contentPane。
contentPane
将始终为非
null
。尝试将其设置为
null
将导致
JWindow
抛出异常。默认的
contentPane
将在其上设置
BorderLayout
管理器。有关添加、删除和设置
JWindow
的
LayoutManager
的详细信息,请参阅
RootPaneContainer
。
有关 contentPane
、glassPane
和 layeredPane
组件的完整描述,请参阅 JRootPane
文档。
在多屏幕环境中,可以在不同的屏幕设备上创建 JWindow
。请参阅 Window
以获取更多信息。
警告:Swing 不是线程安全的。有关更多信息,请参阅 Swing's Threading Policy。
警告:此类的序列化对象与以后的 Swing 版本不兼容。当前序列化支持适用于短期存储,或适用于在运行相同 Swing 版本的应用程序之间进行 RMI(Remote Method Invocation,远程方法调用)。从 1.4 版本开始,已在 java.beans
包中添加了支持所有 JavaBeansTM 长期存储的功能。请参见 XMLEncoder
。
JRootPane
嵌套类摘要 | |
---|---|
protected class |
JWindow.AccessibleJWindow 此类实现对 JWindow 类的可访问性支持。 |
从类 java.awt.Window 继承的嵌套类/接口 |
---|
Window.AccessibleAWTWindow |
从类 java.awt.Container 继承的嵌套类/接口 |
---|
Container.AccessibleAWTContainer |
从类 java.awt.Component 继承的嵌套类/接口 |
---|
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy |
字段摘要 | |
---|---|
protected AccessibleContext |
accessibleContext 可访问的上下文属性。 |
protected JRootPane |
rootPane 管理此框架的 contentPane 和可选 menuBar 以及 glassPane 的 JRootPane 实例。 |
protected boolean |
rootPaneCheckingEnabled 如果为 true,则对 add 和 setLayout 的调用将转发到 contentPane 。 |
从类 java.awt.Component 继承的字段 |
---|
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT |
从接口 java.awt.image.ImageObserver 继承的字段 |
---|
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH |
构造方法摘要 | |
---|---|
JWindow() 创建未指定所有者的窗口。 |
|
JWindow(Frame owner) 使用指定的所有者框架创建窗口。 |
|
JWindow(GraphicsConfiguration gc) 使用屏幕设备的指定 GraphicsConfiguration 创建窗口。 |
|
JWindow(Window owner) 使用指定的所有者窗口创建窗口。 |
|
JWindow(Window owner, GraphicsConfiguration gc) 使用屏幕设备的指定所有者窗口和 GraphicsConfiguration 创建窗口。 |
方法摘要 | |
---|---|
protected void |
addImpl(Component comp, Object constraints, int index) 添加指定的子 Component 。 |
protected JRootPane |
createRootPane() 由该构造方法调用以创建默认的 rootPane 。 |
AccessibleContext |
getAccessibleContext() 获取与此 JWindow 关联的 AccessibleContext。 |
Container |
getContentPane() 返回作为此窗口的 contentPane 的 Container 。 |
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 的字符串表示形式。 |
void |
remove(Component comp) 从该容器中移除指定组件。 |
void |
repaint(long time, int x, int y, int width, int height) 在 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 。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
字段详细信息 |
---|
protected JRootPane rootPane
contentPane
和可选
menuBar
以及
glassPane
的
JRootPane
实例。
protected boolean rootPaneCheckingEnabled
add
和
setLayout
的调用将转发到
contentPane
。其最初设置为 false,但在构造
JWindow
时将被设置为 true。
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
,则使用共享所有者,而且此窗口不可获得焦点。而且,只有其所有者正显示在屏幕上时此窗口才可获得焦点。
此构造方法将组件的 locale 属性设置为 JComponent.getDefaultLocale
返回的值。
owner
- 从中显示该窗口的框架
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true。
GraphicsEnvironment.isHeadless()
,
Window.isFocusableWindow()
,
JComponent.getDefaultLocale()
public JWindow(Window owner)
owner
为
null
,则使用共享所有者,而且此窗口不可获得焦点。
此构造方法将组件的 locale 属性设置为 JComponent.getDefaultLocale
返回的值。
owner
- 从中显示该窗口的窗口
HeadlessException
- 如果
GraphicsEnvironment.isHeadless()
返回 true。
GraphicsEnvironment.isHeadless()
,
Window.isFocusableWindow()
,
JComponent.getDefaultLocale()
public JWindow(Window owner, GraphicsConfiguration gc)
GraphicsConfiguration
创建窗口。如果
owner
为
null
,则使用共享所有者,而且此窗口不可获得焦点。
此构造方法将组件的 locale 属性设置为 JComponent.getDefaultLocale
返回的值。
owner
- 从中显示该窗口的窗口
gc
- 用以构造新窗口的
GraphicsConfiguration
;如果 gc 为
null
,则假定系统默认的
GraphicsConfiguration
,除非
owner
也为 null,在此情况下将使用来自共享所有者框架的
GraphicsConfiguration
。
HeadlessException
- 如果
GraphicsEnvironment.isHeadless()
返回 true。
IllegalArgumentException
- 如果
gc
不是来自屏幕设备。
GraphicsEnvironment.isHeadless()
,
Window.isFocusableWindow()
,
JComponent.getDefaultLocale()
方法详细信息 |
---|
protected void windowInit()
JWindow
。