- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- java.awt.Window
-
- java.awt.Dialog
-
- javax.swing.JDialog
-
- 实现的所有接口
-
ImageObserver
,MenuContainer
,Serializable
,Accessible
,RootPaneContainer
,WindowConstants
@JavaBean(defaultProperty="JMenuBar", description="A toplevel window for creating dialog boxes.") public class JDialog extends Dialog implements WindowConstants, Accessible, RootPaneContainer
用于创建对话框窗口的主类。 您可以使用此类创建自定义对话框,或调用JOptionPane
中的许多类方法来创建各种标准对话框。 有关创建对话框的信息,请参阅Java教程部分How to Make Dialogs 。JDialog
组件包含JRootPane
作为其唯一的子项。contentPane
应该是contentPane
的父JDialog
。 为方便起见,add
remove
和setLayout
方法被重写,以便它们将调用委托给ContentPane
的相应方法。 例如,您可以将子组件添加到对话框,如下所示:dialog.add(child);
并且孩子将被添加到contentPane。contentPane
始终为非null
。 尝试将其设置为null
生成异常。 默认contentPane
上设置了BorderLayout
管理器。 有关添加,删除和设置LayoutManager
的LayoutManager的详细信息,请参阅JDialog
。请参阅
JRootPane
文档的完整描述contentPane
,glassPane
和layeredPane
组件。在多屏幕环境中,您可以在与其所有者不同的屏幕设备上创建
JDialog
。 有关更多信息,请参见Frame
。警告: Swing不是线程安全的。 有关更多信息,请参阅Swing's Threading Policy 。
警告:此类的序列化对象与以后的Swing版本不兼容。 当前的序列化支持适用于运行相同版本Swing的应用程序之间的短期存储或RMI。 从1.4开始,
java.beans
软件包中添加了对所有JavaBeansjava.beans
长期存储的支持。 请参阅XMLEncoder
。- 从以下版本开始:
- 1.2
- 另请参见:
-
JOptionPane
,JRootPane
,RootPaneContainer
, Serialized Form
-
-
嵌套类汇总
嵌套类 变量和类型 类 描述 protected class
JDialog.AccessibleJDialog
此类实现JDialog
类的可访问性支持。-
嵌套类/接口声明在类 java.awt.Dialog
Dialog.AccessibleAWTDialog, Dialog.ModalExclusionType, Dialog.ModalityType
-
嵌套类/接口声明在类 java.awt.Window
Window.AccessibleAWTWindow, Window.Type
-
嵌套类/接口声明在类 java.awt.Container
Container.AccessibleAWTContainer
-
-
字段汇总
字段 变量和类型 字段 描述 protected AccessibleContext
accessibleContext
AccessibleContext
与此JDialog
相关联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
-
Fields declared in interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
Fields declared in interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE
-
-
构造方法摘要
构造方法 构造器 描述 JDialog()
创建一个没有标题且没有指定Frame
所有者的无模式对话框。JDialog(Dialog owner)
使用指定的Dialog
作为其所有者和空标题创建无模式对话框。JDialog(Dialog owner, boolean modal)
创建一个具有空标题和指定模态的对话框,并将Dialog
作为其所有者Dialog
。JDialog(Dialog owner, String title)
使用指定的标题和指定的所有者对话框创建无模式对话框。JDialog(Dialog owner, String title, boolean modal)
创建具有指定标题,模态和指定所有者Dialog
。JDialog(Dialog owner, String title, boolean modal, GraphicsConfiguration gc)
创建具有指定标题的对话框,所有者为Dialog
,modality和GraphicsConfiguration
。JDialog(Frame owner)
使用指定的Frame
作为其所有者和空标题创建无模式对话框。JDialog(Frame owner, boolean modal)
创建一个具有空标题和指定模态的对话框,并将Frame
作为其所有者Frame
。JDialog(Frame owner, String title)
使用指定的标题和指定的所有者框架创建无模式对话框。JDialog(Frame owner, String title, boolean modal)
创建具有指定标题,所有者Frame
和模态的对话框。JDialog(Frame owner, String title, boolean modal, GraphicsConfiguration gc)
创建具有指定标题的对话框,所有者为Frame
,modality和GraphicsConfiguration
。JDialog(Window owner)
使用指定的Window
作为其所有者和空标题创建无模式对话框。JDialog(Window owner, Dialog.ModalityType modalityType)
创建一个具有空标题和指定模态的对话框,并将Window
作为其所有者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
,modality和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()
返回用户在此对话框上启动“关闭”时发生的操作。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
的字符串表示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)
设置当用户在此对话框上启动“关闭”时默认发生的操作。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
-
声明方法的类 java.awt.Window
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, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, 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, toFront
-
声明方法的类 java.awt.Container
add, 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, removeNotify, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusDownCycle, validate, validateTree
-
声明方法的类 java.awt.Component
action, 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, 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, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setMixingCutoutShape, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
字段详细信息
-
rootPane
protected JRootPane rootPane
-
rootPaneCheckingEnabled
protected boolean rootPaneCheckingEnabled
如果为true,则对add
和setLayout
调用将转发到contentPane
。 这最初为false,但在构造JDialog
时设置为true。
-
accessibleContext
protected AccessibleContext accessibleContext
AccessibleContext
与此相关JDialog
-
-
构造方法详细信息
-
JDialog
public JDialog()
创建一个没有标题且没有指定Frame
所有者的无模式对话框。 共享的隐藏框架将被设置为对话框的所有者。此构造函数将组件的locale属性设置为
JComponent.getDefaultLocale
返回的值。注意:此构造函数不允许您创建无主
JDialog
。 要创建无主JDialog
,必须使用参数为null
的JDialog(Window)
或JDialog(Dialog)
构造函数。- 异常
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless()
返回true
。 - 另请参见:
-
GraphicsEnvironment.isHeadless()
,JComponent.getDefaultLocale()
-
JDialog
public JDialog(Frame owner)
使用指定的Frame
作为其所有者和空标题创建无模式对话框。 如果owner
是null
,则共享的隐藏帧将被设置为对话框的所有者。此构造函数将组件的locale属性设置为
JComponent.getDefaultLocale
返回的值。注意:此构造函数不允许您创建无主
JDialog
。 要创建无主JDialog
,必须使用参数为null
的JDialog(Window)
或JDialog(Dialog)
构造函数。- 参数
-
owner
- 显示对话框的Frame
- 异常
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless()
返回true
。 - 另请参见:
-
GraphicsEnvironment.isHeadless()
,JComponent.getDefaultLocale()
-
JDialog
public JDialog(Frame owner, boolean modal)
创建一个具有空标题和指定模态的对话框,并将Frame
作为其所有者Frame
。 如果owner
是null
,则共享的隐藏帧将被设置为对话框的所有者。此构造函数将组件的locale属性设置为
JComponent.getDefaultLocale
返回的值。注意:此构造函数不允许您创建无主
JDialog
。 要创建无主JDialog
,必须使用参数为null
的JDialog(Window)
或JDialog(Dialog)
构造函数。- 参数
-
owner
- 显示对话框的Frame
-
modal
- 指定对话框是否在显示时阻止用户输入到其他顶级窗口。 如果是true
,则将modality type属性设置为DEFAULT_MODALITY_TYPE
,否则该对话框为无模式。 - 异常
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless()
返回true
。 - 另请参见:
-
GraphicsEnvironment.isHeadless()
,JComponent.getDefaultLocale()
-
JDialog
public JDialog(Frame owner, String title)
使用指定的标题和指定的所有者框架创建无模式对话框。 如果owner
是null
,则共享的隐藏帧将被设置为对话框的所有者。此构造函数将组件的locale属性设置为
JComponent.getDefaultLocale
返回的值。注意:此构造函数不允许您创建无主
JDialog
。 要创建无主JDialog
,必须使用参数为null
的JDialog(Window)
或JDialog(Dialog)
构造函数。- 参数
-
owner
- 显示对话框的Frame
-
title
- 要在对话框的标题栏中显示的String
- 异常
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless()
返回true
。 - 另请参见:
-
GraphicsEnvironment.isHeadless()
,JComponent.getDefaultLocale()
-
JDialog
public JDialog(Frame owner, String title, boolean modal)
创建一个具有指定标题,所有者Frame
和模态的对话框。 如果owner
是null
,则共享的隐藏帧将被设置为此对话框的所有者。此构造函数将组件的locale属性设置为
JComponent.getDefaultLocale
返回的值。注:所有弹出式组件(
JComboBox
,JPopupMenu
,JMenuBar
模态对话框内创建)将被迫轻量级的。注意:此构造函数不允许您创建无主
JDialog
。 要创建一个无主的JDialog
您必须使用参数为null
的JDialog(Window)
或JDialog(Dialog)
构造函数。- 参数
-
owner
- 显示对话框的Frame
-
title
-String
显示在对话框的标题栏中 -
modal
- 指定对话框是否在显示时阻止用户输入到其他顶级窗口。 如果是true
,则模态类型属性设置为DEFAULT_MODALITY_TYPE
否则对话框是无模式的 - 异常
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless()
返回true
。 - 另请参见:
-
Dialog.ModalityType
,Dialog.ModalityType.MODELESS
,Dialog.DEFAULT_MODALITY_TYPE
,Dialog.setModal(boolean)
,Dialog.setModalityType(java.awt.Dialog.ModalityType)
,GraphicsEnvironment.isHeadless()
,JComponent.getDefaultLocale()
-
JDialog
public JDialog(Frame owner, String title, boolean modal, GraphicsConfiguration gc)
创建一个具有指定标题的对话框,所有者为Frame
,模态和GraphicsConfiguration
。 如果owner
是null
,则共享的隐藏帧将被设置为此对话框的所有者。此构造函数将组件的locale属性设置为
JComponent.getDefaultLocale
返回的值。注:所有弹出式组件(
JComboBox
,JPopupMenu
,JMenuBar
模态对话框内创建)将被迫轻量级的。注意:此构造函数不允许您创建无主
JDialog
。 要创建无主JDialog
您必须使用参数为null
的JDialog(Window)
或JDialog(Dialog)
构造函数。- 参数
-
owner
- 显示对话框的Frame
-
title
-String
显示在对话框的标题栏中 -
modal
- 指定对话框是否在显示时阻止用户输入到其他顶级窗口。 如果是true
,则模态类型属性设置为DEFAULT_MODALITY_TYPE
,否则对话框是无模式的。 -
gc
- 目标屏幕设备的GraphicsConfiguration
; 如果是null
,则假定为默认系统GraphicsConfiguration
- 异常
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless()
返回true
。 - 从以下版本开始:
- 1.4
- 另请参见:
-
Dialog.ModalityType
,Dialog.ModalityType.MODELESS
,Dialog.DEFAULT_MODALITY_TYPE
,Dialog.setModal(boolean)
,Dialog.setModalityType(java.awt.Dialog.ModalityType)
,GraphicsEnvironment.isHeadless()
,JComponent.getDefaultLocale()
-
JDialog
public JDialog(Dialog owner)
使用指定的Dialog
作为其所有者和空标题创建无模式对话框。此构造函数将组件的locale属性设置为
JComponent.getDefaultLocale
返回的值。- 参数
-
owner
- 显示对话框的所有者Dialog
或如果此对话框没有所有者,null
- 异常
-
HeadlessException
-if GraphicsEnvironment.isHeadless()
返回true
。 - 另请参见:
-
GraphicsEnvironment.isHeadless()
,JComponent.getDefaultLocale()
-
JDialog
public JDialog(Dialog owner, boolean modal)
创建一个空标题和指定模态的对话框,并将Dialog
作为其所有者Dialog
。此构造函数将组件的locale属性设置为
JComponent.getDefaultLocale
返回的值。- 参数
-
owner
- 显示对话框的所有者Dialog
或如果此对话框没有所有者,null
-
modal
- 指定对话框是否在显示时阻止用户输入到其他顶级窗口。 如果是true
,则模态类型属性设置为DEFAULT_MODALITY_TYPE
,否则对话框是无模式的。 - 异常
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless()
返回true
。 - 另请参见:
-
Dialog.ModalityType
,Dialog.ModalityType.MODELESS
,Dialog.DEFAULT_MODALITY_TYPE
,Dialog.setModal(boolean)
,Dialog.setModalityType(java.awt.Dialog.ModalityType)
,GraphicsEnvironment.isHeadless()
,JComponent.getDefaultLocale()
-
JDialog
public JDialog(Dialog owner, String title)
使用指定的标题和指定的所有者对话框创建无模式对话框。此构造函数将组件的locale属性设置为
JComponent.getDefaultLocale
返回的值。- 参数
-
owner
- 显示对话框的所有者Dialog
或如果此对话框没有所有者,null
-
title
-String
显示在对话框的标题栏中 - 异常
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless()
返回true
。 - 另请参见:
-
GraphicsEnvironment.isHeadless()
,JComponent.getDefaultLocale()
-
JDialog
public JDialog(Dialog owner, String title, boolean modal)
创建具有指定标题,模态和指定所有者Dialog
。此构造函数将组件的locale属性设置为
JComponent.getDefaultLocale
返回的值。- 参数
-
owner
- 显示对话框的所有者Dialog
或如果此对话框没有所有者,null
-
title
-String
显示在对话框的标题栏中 -
modal
- 指定对话框是否在显示时阻止用户输入到其他顶级窗口。 如果是true
,则模态类型属性设置为DEFAULT_MODALITY_TYPE
,否则对话框是无模式的 - 异常
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless()
返回true
。 - 另请参见:
-
Dialog.ModalityType
,Dialog.ModalityType.MODELESS
,Dialog.DEFAULT_MODALITY_TYPE
,Dialog.setModal(boolean)
,Dialog.setModalityType(java.awt.Dialog.ModalityType)
,GraphicsEnvironment.isHeadless()
,JComponent.getDefaultLocale()
-
JDialog
public JDialog(Dialog owner, String title, boolean modal, GraphicsConfiguration gc)
创建一个具有指定标题的对话框,所有者为Dialog
,模态和GraphicsConfiguration
。注:所有弹出式组件(
JComboBox
,JPopupMenu
,JMenuBar
模态对话框内创建)将被迫轻量级的。此构造函数将组件的locale属性设置为
JComponent.getDefaultLocale
返回的值。- 参数
-
owner
- 显示对话框的所有者Dialog
或如果此对话框没有所有者,null
-
title
-String
显示在对话框的标题栏中 -
modal
- 指定对话框是否在显示时阻止用户输入到其他顶级窗口。 如果是true
,则模态类型属性设置为DEFAULT_MODALITY_TYPE
,否则对话框是无模式的 -
gc
- 目标屏幕设备的GraphicsConfiguration
; 如果是null
,则假定为默认系统GraphicsConfiguration
- 异常
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless()
返回true
。 - 从以下版本开始:
- 1.4
- 另请参见:
-
Dialog.ModalityType
,Dialog.ModalityType.MODELESS
,Dialog.DEFAULT_MODALITY_TYPE
,Dialog.setModal(boolean)
,Dialog.setModalityType(java.awt.Dialog.ModalityType)
,GraphicsEnvironment.isHeadless()
,JComponent.getDefaultLocale()
-
JDialog
public JDialog(Window owner)
使用指定的Window
作为其所有者和空标题创建无模式对话框。此构造函数将组件的locale属性设置为
JComponent.getDefaultLocale
返回的值。- 参数
-
owner
- 显示对话框的Window
或null
如果此对话框没有所有者 - 异常
-
IllegalArgumentException
- 如果owner
不是Dialog
或Frame
的实例 -
IllegalArgumentException
- 如果owner
的GraphicsConfiguration
不是来自屏幕设备 -
HeadlessException
- 当GraphicsEnvironment.isHeadless()
返回true
- 从以下版本开始:
- 1.6
- 另请参见:
-
GraphicsEnvironment.isHeadless()
,JComponent.getDefaultLocale()
-
JDialog
public JDialog(Window owner, Dialog.ModalityType modalityType)
创建一个空标题和指定模态的对话框,并作为其所有者使用Window
。此构造函数将组件的locale属性设置为
JComponent.getDefaultLocale
返回的值。- 参数
-
owner
- 显示对话框的Window
或null
如果此对话框没有所有者) -
modalityType
- 指定对话框是否在显示时阻止输入到其他窗口。null
值和不支持的模态类型相当于MODELESS
- 异常
-
IllegalArgumentException
- 如果owner
不是Dialog
或Frame
的实例 -
IllegalArgumentException
- 如果owner
的GraphicsConfiguration
不是来自屏幕设备 -
HeadlessException
- 当GraphicsEnvironment.isHeadless()
返回true
-
SecurityException
- 如果调用线程无权使用给定的modalityType
创建模式对话框 - 从以下版本开始:
- 1.6
- 另请参见:
-
Dialog.ModalityType
,Dialog.setModal(boolean)
,Dialog.setModalityType(java.awt.Dialog.ModalityType)
,GraphicsEnvironment.isHeadless()
,JComponent.getDefaultLocale()
-
JDialog
public JDialog(Window owner, String title)
使用指定的标题和所有者Window
创建无模式对话框。此构造函数将组件的locale属性设置为
JComponent.getDefaultLocale
返回的值。- 参数
-
owner
- 显示对话框的Window
或null
如果此对话框没有所有者 -
title
- 如果对话框没有标题,则在对话框的标题栏中显示String
或null
- 异常
-
IllegalArgumentException
- 如果owner
不是Dialog
或Frame
的实例 -
IllegalArgumentException
- 如果owner
的GraphicsConfiguration
不是来自屏幕设备 -
HeadlessException
- 当GraphicsEnvironment.isHeadless()
返回true
- 从以下版本开始:
- 1.6
- 另请参见:
-
GraphicsEnvironment.isHeadless()
,JComponent.getDefaultLocale()
-
JDialog
public JDialog(Window owner, String title, Dialog.ModalityType modalityType)
创建一个具有指定标题的对话框,所有者为Window
和modality。此构造函数将组件的locale属性设置为
JComponent.getDefaultLocale
返回的值。- 参数
-
owner
- 显示对话框的Window
或null
如果此对话框没有所有者) -
title
-该String
在对话框的标题栏或显示null
如果对话框没有标题 -
modalityType
- 指定对话框是否在显示时阻止输入到其他窗口。null
值和不支持的模态类型相当于MODELESS
- 异常
-
IllegalArgumentException
- 如果owner
不是Dialog
或Frame
的实例 -
IllegalArgumentException
- 如果owner
的GraphicsConfiguration
不是来自屏幕设备 -
HeadlessException
- 当GraphicsEnvironment.isHeadless()
返回true
-
SecurityException
- 如果调用线程无权使用给定的modalityType
创建模式对话框 - 从以下版本开始:
- 1.6
- 另请参见:
-
Dialog.ModalityType
,Dialog.setModal(boolean)
,Dialog.setModalityType(java.awt.Dialog.ModalityType)
,GraphicsEnvironment.isHeadless()
,JComponent.getDefaultLocale()
-
JDialog
public JDialog(Window owner, String title, Dialog.ModalityType modalityType, GraphicsConfiguration gc)
创建具有指定标题的对话框,所有者为Window
,modality和GraphicsConfiguration
。注:所有弹出式组件(
JComboBox
,JPopupMenu
,JMenuBar
模态对话框内创建)将被迫轻量级的。此构造函数将组件的locale属性设置为
JComponent.getDefaultLocale
返回的值。- 参数
-
owner
- 显示对话框的Window
或null
如果此对话框没有所有者) -
title
-String
显示在对话框的标题栏中或null
如果对话框没有标题 -
modalityType
- 指定对话框是否在显示时阻止输入到其他窗口。null
值和不支持的模态类型等效于MODELESS
-
gc
- 目标屏幕设备的GraphicsConfiguration
; 如果为null
,则假定为默认系统GraphicsConfiguration
- 异常
-
IllegalArgumentException
- 如果owner
不是Dialog
或Frame
的实例 -
IllegalArgumentException
- 如果owner
的GraphicsConfiguration
不是来自屏幕设备 -
HeadlessException
- 当GraphicsEnvironment.isHeadless()
返回true
-
SecurityException
- 如果调用线程无权使用给定的modalityType
创建模式对话框 - 从以下版本开始:
- 1.6
- 另请参见:
-
Dialog.ModalityType
,Dialog.setModal(boolean)
,Dialog.setModalityType(java.awt.Dialog.ModalityType)
,GraphicsEnvironment.isHeadless()
,JComponent.getDefaultLocale()
-
-
方法详细信息
-
dialogInit
protected void dialogInit()
由构造函数调用以正确初始化JDialog
。
-
createRootPane
protected JRootPane createRootPane()
由构造函数方法调用以创建默认值rootPane
。- 结果
-
一个新的
JRootPane
-
processWindowEvent
protected void processWindowEvent(WindowEvent e)
处理窗口事件,具体取决于defaultCloseOperation
属性的状态。- 重写:
-
processWindowEvent
在类Window
- 参数
-
e
- 窗口事件 - 另请参见:
-
setDefaultCloseOperation(int)
-
setDefaultCloseOperation
@BeanProperty(preferred=true, enumerationValues={"WindowConstants.DO_NOTHING_ON_CLOSE","WindowConstants.HIDE_ON_CLOSE","WindowConstants.DISPOSE_ON_CLOSE"}, description="The dialog\'s default close operation.") public void setDefaultCloseOperation(int operation)
设置当用户在此对话框上启动“关闭”时默认发生的操作。 您必须指定以下选项之一:
-
DO_NOTHING_ON_CLOSE
(在WindowConstants
定义):不要做任何事情; 要求程序处理已注册的WindowListener
对象的windowClosing
方法中的操作。 -
HIDE_ON_CLOSE
(在WindowConstants
定义):在调用任何已注册的WindowListener
对象后自动隐藏对话框。 -
DISPOSE_ON_CLOSE
(在WindowConstants
定义):在调用任何已注册的WindowListener
对象后自动隐藏和WindowListener
对话框。
默认情况下,该值设置为
HIDE_ON_CLOSE
。 对此属性值的更改会导致触发属性更改事件,属性名称为“defaultCloseOperation”。注意 :当Java虚拟机(VM)中的最后一个可显示窗口被丢弃时,VM可能会终止。 有关更多信息,请参见AWT Threading Issues 。
- 参数
-
operation
- 用户关闭对话框时应执行的操作 - 异常
-
IllegalArgumentException
- 如果defaultCloseOperation值不是上述有效值之一 - 另请参见:
-
Window.addWindowListener(java.awt.event.WindowListener)
,getDefaultCloseOperation()
,WindowConstants
-
-
getDefaultCloseOperation
public int getDefaultCloseOperation()
返回用户在此对话框上启动“关闭”时发生的操作。- 结果
- 一个表示窗口关闭操作的整数
- 另请参见:
-
setDefaultCloseOperation(int)
-
setTransferHandler
@BeanProperty(hidden=true, description="Mechanism for transfer of data into the component") public void setTransferHandler(TransferHandler newHandler)
设置transferHandler
属性,这是一种支持将数据传输到此组件的机制。 如果组件不支持数据传输操作,请使用null
。如果系统属性
suppressSwingDropSupport
是false
(默认值)并且此组件上的当前放置目标是null
或者不是用户设置放置目标,则此方法将更改放置目标,如下所示:如果newHandler
为null
,则将清除放置目标。 如果不是null
,它将安装新的DropTarget
。注意:与
JDialog
TransferHandler
使用时,TransferHandler
仅提供数据导入功能,因为数据导出相关方法当前已键入JComponent
。有关详细信息,请参阅The Java Tutorial中的 How to Use Drag and Drop and Data Transfer部分。
- 参数
-
newHandler
- 新的TransferHandler
- 从以下版本开始:
- 1.6
- 另请参见:
-
TransferHandler
,getTransferHandler()
,Component.setDropTarget(java.awt.dnd.DropTarget)
-
getTransferHandler
public TransferHandler getTransferHandler()
获取transferHandler
属性。- 结果
-
transferHandler
属性的值 - 从以下版本开始:
- 1.6
- 另请参见:
-
TransferHandler
,setTransferHandler(javax.swing.TransferHandler)
-
update
public void update(Graphics g)
致电paint(g)
。 重写此方法是为了防止不必要的调用来清除背景。- 重写:
-
update
在类Container
- 参数
-
g
- 要绘制的Graphics
上下文 - 另请参见:
-
Component.update(Graphics)
-
setJMenuBar
@BeanProperty(bound=false, hidden=true, description="The menubar for accessing pulldown menus from this dialog.") public void setJMenuBar(JMenuBar menu)
设置此对话框的菜单栏。- 参数
-
menu
- 菜单栏放置在对话框中 - 另请参见:
-
getJMenuBar()
-
getJMenuBar
public JMenuBar getJMenuBar()
返回此对话框中设置的菜单栏。- 结果
- 菜单栏设置在此对话框上
- 另请参见:
-
setJMenuBar(javax.swing.JMenuBar)
-
isRootPaneCheckingEnabled
protected boolean isRootPaneCheckingEnabled()
返回对add
和setLayout
调用是否转发到contentPane
。- 结果
-
如果转发
add
和add
,setLayout
true;否则为add
。 否则是假的 - 另请参见:
-
addImpl(java.awt.Component, java.lang.Object, int)
,setLayout(java.awt.LayoutManager)
,setRootPaneCheckingEnabled(boolean)
,RootPaneContainer
-
setRootPaneCheckingEnabled
@BeanProperty(hidden=true, description="Whether the add and setLayout methods are forwarded") protected void setRootPaneCheckingEnabled(boolean enabled)
设置是否add
和setLayout
呼叫转发到contentPane
。- 参数
-
enabled
- 如果转发add
和setLayout
true,如果它们应直接在JDialog
上运行,JDialog
。 - 另请参见:
-
addImpl(java.awt.Component, java.lang.Object, int)
,setLayout(java.awt.LayoutManager)
,isRootPaneCheckingEnabled()
,RootPaneContainer
-
addImpl
protected void addImpl(Component comp, Object constraints, int index)
添加指定的子项Component
。 重写此方法以有条件地转发对contentPane
调用。 默认情况下,子项将添加到contentPane
而不是帧中,有关详细信息,请参阅RootPaneContainer
。- 重写:
-
addImpl
类Container
- 参数
-
comp
- 要增强的组件 -
constraints
- 要遵守的约束 -
index
- 该指数 - 异常
-
IllegalArgumentException
- 如果index
无效 -
IllegalArgumentException
- 如果将容器的父级添加到自身 -
IllegalArgumentException
- 如果向容器添加窗口 - 另请参见:
-
setRootPaneCheckingEnabled(boolean)
,RootPaneContainer
-
remove
public void remove(Component comp)
从容器中删除指定的组件。 如果comp
不是rootPane
,则会将呼叫转发至contentPane
。 如果comp
不是JDialog
或contentPane
的子级,则contentPane
。- 重写:
-
remove
在类Container
- 参数
-
comp
- 要删除的组件 - 异常
-
NullPointerException
- 如果comp
为空 - 另请参见:
-
Container.add(java.awt.Component)
,RootPaneContainer
-
setLayout
public void setLayout(LayoutManager manager)
- 重写:
-
setLayout
在类Container
- 参数
-
manager
-LayoutManager
- 另请参见:
-
setRootPaneCheckingEnabled(boolean)
,RootPaneContainer
-
getRootPane
@BeanProperty(bound=false, hidden=true, description="the RootPane object for this dialog.") public JRootPane getRootPane()
返回此对话框的rootPane
对象。- Specified by:
-
getRootPane
,界面RootPaneContainer
- 结果
- 这个组件单个JRootPane子。
- 另请参见:
-
setRootPane(javax.swing.JRootPane)
,RootPaneContainer.getRootPane()
-
setRootPane
protected void setRootPane(JRootPane root)
设置rootPane
属性。 构造函数调用此方法。- 参数
-
root
- 此对话框的rootPane
对象 - 另请参见:
-
getRootPane()
-
getContentPane
public Container getContentPane()
返回此对话框的contentPane
对象。- Specified by:
-
getContentPane
,界面RootPaneContainer
- 结果
-
contentPane
财产 - 另请参见:
-
setContentPane(java.awt.Container)
,RootPaneContainer.getContentPane()
-
setContentPane
@BeanProperty(bound=false, hidden=true, description="The client area of the dialog where child components are normally inserted.") public void setContentPane(Container contentPane)
设置contentPane
属性。 构造函数调用此方法。Swing的绘画架构需要在包含层次结构中使用不透明的
JComponent
。 这通常由内容窗格提供。 如果更换内容窗格,建议您使用不透明的JComponent
替换它。- Specified by:
-
setContentPane
,界面RootPaneContainer
- 参数
-
contentPane
- 此对话框的contentPane
对象 - 异常
-
IllegalComponentStateException
- (运行时异常),如果内容窗格参数为null
- 另请参见:
-
JRootPane
,getContentPane()
,RootPaneContainer.setContentPane(java.awt.Container)
-
getLayeredPane
public JLayeredPane getLayeredPane()
返回此对话框的layeredPane
对象。- Specified by:
-
getLayeredPane
,界面RootPaneContainer
- 结果
-
layeredPane
属性 - 另请参见:
-
setLayeredPane(javax.swing.JLayeredPane)
,RootPaneContainer.getLayeredPane()
-
setLayeredPane
@BeanProperty(bound=false, hidden=true, description="The pane which holds the various dialog layers.") public void setLayeredPane(JLayeredPane layeredPane)
设置layeredPane
属性。 构造函数调用此方法。- Specified by:
-
setLayeredPane
in interfaceRootPaneContainer
- 参数
-
layeredPane
- 新的layeredPane
财产 - 异常
-
IllegalComponentStateException
- (运行时异常),如果分层窗格参数为null - 另请参见:
-
getLayeredPane()
,RootPaneContainer.setLayeredPane(javax.swing.JLayeredPane)
-
getGlassPane
public Component getGlassPane()
返回此对话框的glassPane
对象。- Specified by:
-
getGlassPane
,界面RootPaneContainer
- 结果
-
glassPane
属性 - 另请参见:
-
setGlassPane(java.awt.Component)
,RootPaneContainer.getGlassPane()
-
setGlassPane
@BeanProperty(bound=false, hidden=true, description="A transparent pane used for menu rendering.") public void setGlassPane(Component glassPane)
设置glassPane
属性。 构造函数调用此方法。- Specified by:
-
setGlassPane
在接口RootPaneContainer
- 参数
-
glassPane
- 此对话框的glassPane
对象 - 另请参见:
-
getGlassPane()
,RootPaneContainer.setGlassPane(java.awt.Component)
-
getGraphics
@BeanProperty(bound=false) public Graphics getGraphics()
为此组件创建图形上下文。 如果此组件当前不可显示,则此方法将返回null
。- 重写:
-
getGraphics
类Component
- 结果
-
此组件的图形上下文,如果没有,
null
- 从以下版本开始:
- 1.6
- 另请参见:
-
Component.paint(java.awt.Graphics)
-
repaint
public void repaint(long time, int x, int y, int width, int height)
在time
毫秒内重新绘制此组件的指定矩形。 有关如何处理重绘的详细信息,请参阅RepaintManager
。- 重写:
-
repaint
类Component
- 参数
-
time
- 更新前的最长时间(以毫秒为单位) -
x
- x坐标 -
y
- y坐标 -
width
- 宽度 -
height
- 身高 - 从以下版本开始:
- 1.6
- 另请参见:
-
RepaintManager
-
setDefaultLookAndFeelDecorated
public static void setDefaultLookAndFeelDecorated(boolean defaultLookAndFeelDecorated)
提供有关新创建的JDialog
是否应具有当前外观提供的Window装饰(例如边框,窗口小部件以关闭窗口,标题...)的提示。 如果defaultLookAndFeelDecorated
为true,则当前LookAndFeel
支持提供窗口装饰,并且当前窗口管理器支持未修饰的窗口,然后新创建的JDialog
将具有当前LookAndFeel
提供的Window装饰。 否则,新创建的JDialog
将由当前窗口管理器提供其窗口装饰。通过执行以下操作,您可以在单个JDialog上获得相同的效果:
JDialog dialog = new JDialog(); dialog.setUndecorated(true); dialog.getRootPane().setWindowDecorationStyle(JRootPane.PLAIN_DIALOG);
- 参数
-
defaultLookAndFeelDecorated
- 关于当前外观是否应该提供窗口装饰的提示 - 从以下版本开始:
- 1.4
- 另请参见:
-
LookAndFeel.getSupportsWindowDecorations()
-
isDefaultLookAndFeelDecorated
public static boolean isDefaultLookAndFeelDecorated()
如果新创建的JDialog
应该具有由当前外观提供的Window装饰,则返回true。 这只是一个提示,因为某些外观可能不支持此功能。- 结果
- 如果外观应该提供Window装饰,则为true。
- 从以下版本开始:
- 1.4
-
paramString
protected String paramString()
返回此JDialog
的字符串表示JDialog
。 此方法仅用于调试目的,返回字符串的内容和格式可能因实现而异。 返回的字符串可能为空,但可能不是null
。- 重写:
-
paramString
在类Dialog
- 结果
-
此
JDialog
的字符串表示JDialog
。
-
getAccessibleContext
public AccessibleContext getAccessibleContext()
获取与此JDialog关联的AccessibleContext。 对于JDialogs,AccessibleContext采用AccessibleJDialog的形式。 如有必要,将创建一个新的AccessibleJDialog实例。- Specified by:
-
getAccessibleContext
in interfaceAccessible
- 重写:
-
getAccessibleContext
类Dialog
- 结果
- an AccessibleJDialog that serves as the AccessibleContext of this JDialog
-
-