java.lang.Object java.awt.Component java.awt.Container java.awt.Window java.awt.Dialog javax.swing.JDialog
public class JDialog
创建对话框窗口的主要类。可以使用此类创建自定义的对话框,或者调用 JOptionPane
中的多个类方法来创建各种标准对话框。有关创建对话框的信息,请参阅 The Java Tutorial 中的 How to Make Dialogs 一节。
JDialog
组件包含一个 JRootPane
作为其唯一子组件。contentPane
应该是所有 JDialog
子组件的父级。为了方便使用 add
及其变体,已经重写了 remove
和 setLayout
,以在必要时将其转发到 contentPane
。这意味着可以编写:
dialog.add(child);将子级添加到 contentPane。
contentPane
始终是非
null
的。试图将其设置为
null
会生成异常。默认的
contentPane
有一个
BorderLayout
管理器。有关添加、移除和设置
JDialog
的
LayoutManager
的更多信息,请参阅
RootPaneContainer
。
有关 contentPane
、glassPane
和 layeredPane
组件的完整描述,请参阅 JRootPane
文档。
在多屏幕环境中,可以在不同于其所有者的屏幕设备上创建一个 JDialog
。有关更多信息,请参阅 Frame
。
警告:Swing 不是线程安全的。有关更多信息,请参阅 Swing's Threading Policy。
警告:此类的序列化对象与以后的 Swing 版本不兼容。当前序列化支持适用于短期存储,或适用于在运行相同 Swing 版本的应用程序之间进行 RMI(Remote Method Invocation,远程方法调用)。从 1.4 版本开始,已在 java.beans
包中添加了支持所有 JavaBeansTM 长期存储的功能。请参见 XMLEncoder
。
JOptionPane
,
JRootPane
,
RootPaneContainer
嵌套类摘要 | |
---|---|
protected class |
JDialog.AccessibleJDialog 此类实现对 JDialog 类的可访问性支持。 |
从类 java.awt.Dialog 继承的嵌套类/接口 |
---|
Dialog.AccessibleAWTDialog, Dialog.ModalExclusionType, Dialog.ModalityType |
从类 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 |
protected boolean |
rootPaneCheckingEnabled 如果为 true,则将对 add 和 setLayout 的调用转发到 contentPane 。 |
从类 java.awt.Dialog 继承的字段 |
---|
DEFAULT_MODALITY_TYPE |
从类 java.awt.Component 继承的字段 |
---|
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT |
从接口 javax.swing.WindowConstants 继承的字段 |
---|
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE |
从接口 java.awt.image.ImageObserver 继承的字段 |
---|
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH |
构造方法摘要 | |
---|---|
JDialog() 创建一个没有标题并且没有指定 Frame 所有者的无模式对话框。 |
|
JDialog(Dialog owner) 创建一个没有标题但将指定的 Dialog 作为其所有者的无模式对话框。 |
|
JDialog(Dialog owner, boolean modal) 创建一个具有指定所有者 Dialog 和模式的对话框。 |
|
JDialog(Dialog owner, String title) 创建一个具有指定标题和指定所有者对话框的无模式对话框。 |
|
JDialog(Dialog owner, String title, boolean modal) 创建一个具有指定标题、模式和指定所有者 Dialog 的对话框。 |
|
JDialog(Dialog owner, String title, boolean modal, GraphicsConfiguration gc) 创建一个具有指定标题、所有者 Dialog 、模式和 GraphicsConfiguration 的对话框。 |
|
JDialog(Frame owner) 创建一个没有标题但将指定的 Frame 作为其所有者的无模式对话框。 |
|
JDialog(Frame owner, boolean modal) 创建一个具有指定所有者 Frame 、模式和空标题的对话框。 |
|
JDialog(Frame owner, String title) 创建一个具有指定标题和指定所有者窗体的无模式对话框。 |
|
JDialog(Frame owner, String title, boolean modal) 创建一个具有指定标题、所有者 Frame 和模式的对话框。 |
|
JDialog(Frame owner, String title, boolean modal, GraphicsConfiguration gc) 创建一个具有指定标题、所有者 Frame 、模式和 GraphicsConfiguration 的对话框。 |
|
JDialog(Window owner) 创建一个具有指定所有者 Window 和空标题的无模式对话框。 |
|
JDialog(Window owner, Dialog.ModalityType modalityType) 创建一个具有指定所有者 Window 、模式和空标题的对话框。 |
|
JDialog(Window owner, String title) 创建一个具有指定标题和所有者 Window 的无模式对话框。 |
|
JDialog(Window owner, String title, Dialog.ModalityType modalityType) 创建一个具有指定标题、所有者 Window 和模式的对话框。 |
|
JDialog(Window owner, String title, Dialog.ModalityType modalityType, GraphicsConfiguration gc) 创建一个具有指定标题、所有者 Window 、模式和 GraphicsConfiguration 的对话框。 |
方法摘要 | |
---|---|
protected void |
addImpl(Component comp, Object constraints, int index) 添加指定的子 Component 。 |
protected JRootPane |
createRootPane() 构造方法调用此方法来创建默认的 rootPane 。 |
protected void |
dialogInit() 构造方法调用此方法来正确初始化 JDialog 。 |
AccessibleContext |
getAccessibleContext() 获取与此 JDialog 关联的 AccessibleContext。 |
Container |
getContentPane() 返回此对话框的 contentPane 对象。 |
int |
getDefaultCloseOperation() 返回用户在此对话框上启动 "close" 时所执行的操作。 |
Component |
getGlassPane() 返回此对话框的 glassPane 对象。 |
Graphics |
getGraphics() 为组件创建一个图形上下文。 |
JMenuBar |
getJMenuBar() 返回此对话框上设置的菜单栏。 |
JLayeredPane |
getLayeredPane() 返回此对话框的 layeredPane 对象。 |
JRootPane |
getRootPane() 返回此对话框的 rootPane 对象。 |
TransferHandler |
getTransferHandler() 获取 transferHandler 属性。 |
static boolean |
isDefaultLookAndFeelDecorated() 如果应该通过当前外观为新创建的 JDialog 提供其 Window 装饰,则返回 true。 |
protected boolean |
isRootPaneCheckingEnabled() 返回是否将对 add 和 setLayout 的调用转发到 contentPane 。 |
protected String |
paramString() 返回此 JDialog 的字符串表示形式。 |
protected void |
processWindowEvent(WindowEvent e) 根据 defaultCloseOperation 属性的状态处理窗口事件。 |
void |
remove(Component comp) 从该容器中移除指定组件。 |
void |
repaint(long time, int x, int y, int width, int height) 在 time 毫秒内重绘此组件的指定矩形区域。 |
void |
setContentPane(Container contentPane) 设置 contentPane 属性。 |
void |
setDefaultCloseOperation(int operation) 设置当用户在此对话框上启动 "close" 时默认执行的操作。 |
static void |
setDefaultLookAndFeelDecorated(boolean defaultLookAndFeelDecorated) 提供一个关于是否应该通过当前外观为新创建的 JDialog 提供其 Window 装饰(如边界、关闭窗口的小部件、标题……)的提示。 |
void |
setGlassPane(Component glassPane) 设置 glassPane 属性。 |
void |
setJMenuBar(JMenuBar menu) 设置此对话框的菜单栏。 |
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) 。 |
从类 java.awt.Dialog 继承的方法 |
---|
addNotify, getModalityType, getTitle, hide, isModal, isResizable, isUndecorated, setModal, setModalityType, setResizable, setTitle, setUndecorated, setVisible, show, toBack |