public class

Dialog

extends Window
java.lang.Object
   ↳ java.awt.Component
     ↳ java.awt.Container
       ↳ java.awt.Window
         ↳ java.awt.Dialog
Known Direct Subclasses
Known Indirect Subclasses

Class Overview

A Dialog is a top-level window with a title and a border that is typically used to take some form of input from the user. The size of the dialog includes any area designated for the border. The dimensions of the border area can be obtained using the getInsets method, however, since these dimensions are platform-dependent, a valid insets value cannot be obtained until the dialog is made displayable by either calling pack or show. Since the border area is included in the overall size of the dialog, the border effectively obscures a portion of the dialog, constraining the area available for rendering and/or displaying subcomponents to the rectangle which has an upper-left corner location of (insets.left, insets.top), and has a size of width - (insets.left + insets.right) by height - (insets.top + insets.bottom).

The default layout for a dialog is BorderLayout.

A dialog may have its native decorations (i.e. Frame & Titlebar) turned off with setUndecorated. This can only be done while the dialog is not displayable.

A dialog may have another window as its owner when it's constructed. When the owner window of a visible dialog is minimized, the dialog will automatically be hidden from the user. When the owner window is subsequently restored, the dialog is made visible to the user again.

In a multi-screen environment, you can create a Dialog on a different screen device than its owner. See Frame for more information.

A dialog can be either modeless (the default) or modal. A modal dialog is one which blocks input to some other top-level windows in the application, except for any windows created with the dialog as their owner. See AWT Modality specification for details.

Dialogs are capable of generating the following WindowEvents: WindowOpened, WindowClosing, WindowClosed, WindowActivated, WindowDeactivated, WindowGainedFocus, WindowLostFocus.

Summary

Nested Classes
class Dialog.AccessibleAWTDialog This class implements accessibility support for the Dialog class. 
enum Dialog.ModalExclusionType Any top-level window can be marked not to be blocked by modal dialogs. 
enum Dialog.ModalityType Modal dialogs block all input to some top-level windows. 
[Expand]
Inherited Constants
From class java.awt.Component
From interface java.awt.image.ImageObserver
Fields
public static final Dialog.ModalityType DEFAULT_MODALITY_TYPE Default modality type for modal dialogs.
Public Constructors
Dialog(Frame owner)
Constructs an initially invisible, modeless Dialog with the specified owner Frame and an empty title.
Dialog(Frame owner, boolean modal)
Constructs an initially invisible Dialog with the specified owner Frame and modality and an empty title.
Dialog(Frame owner, String title)
Constructs an initially invisible, modeless Dialog with the specified owner Frame and title.
Dialog(Frame owner, String title, boolean modal)
Constructs an initially invisible Dialog with the specified owner Frame, title and modality.
Dialog(Frame owner, String title, boolean modal, GraphicsConfiguration gc)
Constructs an initially invisible Dialog with the specified owner Frame, title, modality, and GraphicsConfiguration.
Dialog(Dialog owner)
Constructs an initially invisible, modeless Dialog with the specified owner Dialog and an empty title.
Dialog(Dialog owner, String title)
Constructs an initially invisible, modeless Dialog with the specified owner Dialog and title.
Dialog(Dialog owner, String title, boolean modal)
Constructs an initially invisible Dialog with the specified owner Dialog, title, and modality.
Dialog(Dialog owner, String title, boolean modal, GraphicsConfiguration gc)
Constructs an initially invisible Dialog with the specified owner Dialog, title, modality and GraphicsConfiguration.
Dialog(Window owner)
Constructs an initially invisible, modeless Dialog with the specified owner Window and an empty title.
Dialog(Window owner, String title)
Constructs an initially invisible, modeless Dialog with the specified owner Window and title.
Dialog(Window owner, Dialog.ModalityType modalityType)
Constructs an initially invisible Dialog with the specified owner Window and modality and an empty title.
Dialog(Window owner, String title, Dialog.ModalityType modalityType)
Constructs an initially invisible Dialog with the specified owner Window, title and modality.
Dialog(Window owner, String title, Dialog.ModalityType modalityType, GraphicsConfiguration gc)
Constructs an initially invisible Dialog with the specified owner Window, title, modality and GraphicsConfiguration.
Public Methods
void addNotify()
Makes this Dialog displayable by connecting it to a native screen resource.
AccessibleContext getAccessibleContext()
Gets the AccessibleContext associated with this Dialog.
Dialog.ModalityType getModalityType()
Returns the modality type of this dialog.
String getTitle()
Gets the title of the dialog.
void hide()
This method is deprecated. As of JDK version 1.5, replaced by setVisible(boolean).
boolean isModal()
Indicates whether the dialog is modal.
boolean isResizable()
Indicates whether this dialog is resizable by the user.
boolean isUndecorated()
Indicates whether this dialog is undecorated.
void setModal(boolean modal)
Specifies whether this dialog should be modal.
void setModalityType(Dialog.ModalityType type)
Sets the modality type for this dialog.
void setResizable(boolean resizable)
Sets whether this dialog is resizable by the user.
void setTitle(String title)
Sets the title of the Dialog.
void setUndecorated(boolean undecorated)
Disables or enables decorations for this dialog.
void setVisible(boolean b)
Shows or hides this Dialog depending on the value of parameter b.
void show()
This method is deprecated. As of JDK version 1.5, replaced by setVisible(boolean).
void toBack()
If this Window is visible, sends this Window to the back and may cause it to lose focus or activation if it is the focused or active Window.

If this dialog is modal and blocks some windows, then all of them are also sent to the back to keep them below the blocking dialog.

Protected Methods
String paramString()
Returns a string representing the state of this dialog.
[Expand]
Inherited Methods
From class java.awt.Window
From class java.awt.Container
From class java.awt.Component
From class java.lang.Object
From interface java.awt.MenuContainer
From interface java.awt.image.ImageObserver
From interface javax.accessibility.Accessible

Fields

public static final Dialog.ModalityType DEFAULT_MODALITY_TYPE

Default modality type for modal dialogs. The default modality type is APPLICATION_MODAL. Calling the oldstyle setModal(true) is equal to setModalityType(DEFAULT_MODALITY_TYPE).

Public Constructors

public Dialog (Frame owner)

Constructs an initially invisible, modeless Dialog with the specified owner Frame and an empty title.

Parameters
owner the owner of the dialog or null if this dialog has no owner
Throws
IllegalArgumentException if the owner's GraphicsConfiguration is not from a screen device
HeadlessException when GraphicsEnvironment.isHeadless() returns true

public Dialog (Frame owner, boolean modal)

Constructs an initially invisible Dialog with the specified owner Frame and modality and an empty title.

Parameters
owner the owner of the dialog or null if this dialog has no owner
modal specifes whether dialog blocks user input to other top-level windows when shown. If false, the dialog is MODELESS; if true, the modality type property is set to DEFAULT_MODALITY_TYPE
Throws
IllegalArgumentException if the owner's GraphicsConfiguration is not from a screen device
HeadlessException when GraphicsEnvironment.isHeadless() returns true

public Dialog (Frame owner, String title)

Constructs an initially invisible, modeless Dialog with the specified owner Frame and title.

Parameters
owner the owner of the dialog or null if this dialog has no owner
title the title of the dialog or null if this dialog has no title
Throws
IllegalArgumentException if the owner's GraphicsConfiguration is not from a screen device
HeadlessException when GraphicsEnvironment.isHeadless() returns true

public Dialog (Frame owner, String title, boolean modal)

Constructs an initially invisible Dialog with the specified owner Frame, title and modality.

Parameters
owner the owner of the dialog or null if this dialog has no owner
title the title of the dialog or null if this dialog has no title
modal specifes whether dialog blocks user input to other top-level windows when shown. If false, the dialog is MODELESS; if true, the modality type property is set to DEFAULT_MODALITY_TYPE
Throws
IllegalArgumentException if the owner's GraphicsConfiguration is not from a screen device
HeadlessException when GraphicsEnvironment.isHeadless() returns true

public Dialog (Frame owner, String title, boolean modal, GraphicsConfiguration gc)

Constructs an initially invisible Dialog with the specified owner Frame, title, modality, and GraphicsConfiguration.

Parameters
owner the owner of the dialog or null if this dialog has no owner
title the title of the dialog or null if this dialog has no title
modal specifes whether dialog blocks user input to other top-level windows when shown. If false, the dialog is MODELESS; if true, the modality type property is set to DEFAULT_MODALITY_TYPE
gc the GraphicsConfiguration of the target screen device; if null, the default system GraphicsConfiguration is assumed
Throws
IllegalArgumentException if gc is not from a screen device
HeadlessException when GraphicsEnvironment.isHeadless() returns true

public Dialog (Dialog owner)

Constructs an initially invisible, modeless Dialog with the specified owner Dialog and an empty title.

Parameters
owner the owner of the dialog or null if this dialog has no owner
Throws
IllegalArgumentException if the owner's GraphicsConfiguration is not from a screen device
HeadlessException when GraphicsEnvironment.isHeadless() returns true
See Also

public Dialog (Dialog owner, String title)

Constructs an initially invisible, modeless Dialog with the specified owner Dialog and title.

Parameters
owner the owner of the dialog or null if this has no owner
title the title of the dialog or null if this dialog has no title
Throws
IllegalArgumentException if the owner's GraphicsConfiguration is not from a screen device
HeadlessException when GraphicsEnvironment.isHeadless() returns true
See Also

public Dialog (Dialog owner, String title, boolean modal)

Constructs an initially invisible Dialog with the specified owner Dialog, title, and modality.

Parameters
owner the owner of the dialog or null if this dialog has no owner
title the title of the dialog or null if this dialog has no title
modal specifes whether dialog blocks user input to other top-level windows when shown. If false, the dialog is MODELESS; if true, the modality type property is set to DEFAULT_MODALITY_TYPE
Throws
IllegalArgumentException if the owner's GraphicsConfiguration is not from a screen device
HeadlessException when GraphicsEnvironment.isHeadless() returns true

public Dialog (Dialog owner, String title, boolean modal, GraphicsConfiguration gc)

Constructs an initially invisible Dialog with the specified owner Dialog, title, modality and GraphicsConfiguration.

Parameters
owner the owner of the dialog or null if this dialog has no owner
title the title of the dialog or null if this dialog has no title
modal specifes whether dialog blocks user input to other top-level windows when shown. If false, the dialog is MODELESS; if true, the modality type property is set to DEFAULT_MODALITY_TYPE
gc the GraphicsConfiguration of the target screen device; if null, the default system GraphicsConfiguration is assumed
Throws
IllegalArgumentException if gc is not from a screen device
HeadlessException when GraphicsEnvironment.isHeadless() returns true

public Dialog (Window owner)

Constructs an initially invisible, modeless Dialog with the specified owner Window and an empty title.

Parameters
owner the owner of the dialog. The owner must be an instance of Dialog, Frame, any of their descendents or null
Throws
IllegalArgumentException if the owner is not an instance of Dialog or Frame
IllegalArgumentException if the owner's GraphicsConfiguration is not from a screen device
HeadlessException when GraphicsEnvironment.isHeadless() returns true
See Also

public Dialog (Window owner, String title)

Constructs an initially invisible, modeless Dialog with the specified owner Window and title.

Parameters
owner the owner of the dialog. The owner must be an instance of Dialog, Frame, any of their descendents or null
title the title of the dialog or null if this dialog has no title
Throws
IllegalArgumentException if the owner is not an instance of Dialog or Frame
IllegalArgumentException if the owner's GraphicsConfiguration is not from a screen device
HeadlessException when GraphicsEnvironment.isHeadless() returns true
See Also

public Dialog (Window owner, Dialog.ModalityType modalityType)

Constructs an initially invisible Dialog with the specified owner Window and modality and an empty title.

Parameters
owner the owner of the dialog. The owner must be an instance of Dialog, Frame, any of their descendents or null
modalityType specifies whether dialog blocks input to other windows when shown. null value and unsupported modality types are equivalent to MODELESS
Throws
IllegalArgumentException if the owner is not an instance of Dialog or Frame
IllegalArgumentException if the owner's GraphicsConfiguration is not from a screen device
HeadlessException when GraphicsEnvironment.isHeadless() returns true
SecurityException if the calling thread does not have permission to create modal dialogs with the given modalityType

public Dialog (Window owner, String title, Dialog.ModalityType modalityType)

Constructs an initially invisible Dialog with the specified owner Window, title and modality.

Parameters
owner the owner of the dialog. The owner must be an instance of Dialog, Frame, any of their descendents or null
title the title of the dialog or null if this dialog has no title
modalityType specifies whether dialog blocks input to other windows when shown. null value and unsupported modality types are equivalent to MODELESS
Throws
IllegalArgumentException if the owner is not an instance of Dialog or Frame
IllegalArgumentException if the owner's GraphicsConfiguration is not from a screen device
HeadlessException when GraphicsEnvironment.isHeadless() returns true
SecurityException if the calling thread does not have permission to create modal dialogs with the given modalityType

public Dialog (Window owner, String title, Dialog.ModalityType modalityType, GraphicsConfiguration gc)

Constructs an initially invisible Dialog with the specified owner Window, title, modality and GraphicsConfiguration.

Parameters
owner the owner of the dialog. The owner must be an instance of Dialog, Frame, any of their descendents or null
title the title of the dialog or null if this dialog has no title
modalityType specifies whether dialog blocks input to other windows when shown. null value and unsupported modality types are equivalent to MODELESS
gc the GraphicsConfiguration of the target screen device; if null, the default system GraphicsConfiguration is assumed
Throws
IllegalArgumentException if the owner is not an instance of Dialog or Frame
IllegalArgumentException if gc is not from a screen device
HeadlessException when GraphicsEnvironment.isHeadless() returns true
SecurityException if the calling thread does not have permission to create modal dialogs with the given modalityType

Public Methods

public void addNotify ()

Makes this Dialog displayable by connecting it to a native screen resource. Making a dialog displayable will cause any of its children to be made displayable. This method is called internally by the toolkit and should not be called directly by programs.

public AccessibleContext getAccessibleContext ()

Gets the AccessibleContext associated with this Dialog. For dialogs, the AccessibleContext takes the form of an AccessibleAWTDialog. A new AccessibleAWTDialog instance is created if necessary.

Returns
  • an AccessibleAWTDialog that serves as the AccessibleContext of this Dialog

public Dialog.ModalityType getModalityType ()

Returns the modality type of this dialog.

Returns
  • modality type of this dialog

public String getTitle ()

Gets the title of the dialog. The title is displayed in the dialog's border.

Returns
  • the title of this dialog window. The title may be null.
See Also

public void hide ()

This method is deprecated.
As of JDK version 1.5, replaced by setVisible(boolean).

Hides the Dialog and then causes show to return if it is currently blocked.

public boolean isModal ()

Indicates whether the dialog is modal.

This method is obsolete and is kept for backwards compatiblity only. Use getModalityType() instead.

Returns
  • true if this dialog window is modal; false otherwise

public boolean isResizable ()

Indicates whether this dialog is resizable by the user. By default, all dialogs are initially resizable.

Returns
  • true if the user can resize the dialog; false otherwise.

public boolean isUndecorated ()

Indicates whether this dialog is undecorated. By default, all dialogs are initially decorated.

Returns
  • true if dialog is undecorated; false otherwise.

public void setModal (boolean modal)

Specifies whether this dialog should be modal.

This method is obsolete and is kept for backwards compatibility only. Use setModalityType() instead.

Note: changing modality of the visible dialog may have no effect until it is hidden and then shown again.

Parameters
modal specifies whether dialog blocks input to other windows when shown; calling to setModal(true) is equivalent to setModalityType(Dialog.DEFAULT_MODALITY_TYPE), and calling to setModal(false) is equvivalent to setModalityType(Dialog.ModalityType.MODELESS)

public void setModalityType (Dialog.ModalityType type)

Sets the modality type for this dialog. See ModalityType for possible modality types.

If the given modality type is not supported, MODELESS is used. You may want to call getModalityType() after calling this method to ensure that the modality type has been set.

Note: changing modality of the visible dialog may have no effect until it is hidden and then shown again.

Parameters
type specifies whether dialog blocks input to other windows when shown. null value and unsupported modality types are equivalent to MODELESS
Throws
SecurityException if the calling thread does not have permission to create modal dialogs with the given modalityType

public void setResizable (boolean resizable)

Sets whether this dialog is resizable by the user.

Parameters
resizable true if the user can resize this dialog; false otherwise.
See Also

public void setTitle (String title)

Sets the title of the Dialog.

Parameters
title the title displayed in the dialog's border; a null value results in an empty title
See Also

public void setUndecorated (boolean undecorated)

Disables or enables decorations for this dialog. This method can only be called while the dialog is not displayable.

Parameters
undecorated true if no dialog decorations are to be enabled; false if dialog decorations are to be enabled.
Throws
if the dialog is displayable.

public void setVisible (boolean b)

Shows or hides this Dialog depending on the value of parameter b.

Parameters
b if true, makes the Dialog visible, otherwise hides the Dialog. If the dialog and/or its owner are not yet displayable, both are made displayable. The dialog will be validated prior to being made visible. If false, hides the Dialog and then causes setVisible(true) to return if it is currently blocked.

Notes for modal dialogs.

  • setVisible(true): If the dialog is not already visible, this call will not return until the dialog is hidden by calling setVisible(false) or dispose.
  • setVisible(false): Hides the dialog and then returns on setVisible(true) if it is currently blocked.
  • It is OK to call this method from the event dispatching thread because the toolkit ensures that other events are not blocked while this method is blocked.

public void show ()

This method is deprecated.
As of JDK version 1.5, replaced by setVisible(boolean).

Makes the Dialog visible. If the dialog and/or its owner are not yet displayable, both are made displayable. The dialog will be validated prior to being made visible. If the dialog is already visible, this will bring the dialog to the front.

If the dialog is modal and is not already visible, this call will not return until the dialog is hidden by calling hide or dispose. It is permissible to show modal dialogs from the event dispatching thread because the toolkit will ensure that another event pump runs while the one which invoked this method is blocked.

public void toBack ()

If this Window is visible, sends this Window to the back and may cause it to lose focus or activation if it is the focused or active Window.

Places this Window at the bottom of the stacking order and shows it behind any other Windows in this VM. No action will take place is this Window is not visible. Some platforms do not allow Windows which are owned by other Windows to appear below their owners. Every attempt will be made to move this Window as low as possible in the stacking order; however, developers should not assume that this method will move this Window below all other windows in every situation.

Because of variations in native windowing systems, no guarantees about changes to the focused and active Windows can be made. Developers must never assume that this Window is no longer the focused or active Window until this Window receives a WINDOW_LOST_FOCUS or WINDOW_DEACTIVATED event. On platforms where the top-most window is the focused window, this method will probably cause this Window to lose focus. In that case, the next highest, focusable Window in this VM will receive focus. On platforms where the stacking order does not typically affect the focused window, this method will probably leave the focused and active Windows unchanged.

If this dialog is modal and blocks some windows, then all of them are also sent to the back to keep them below the blocking dialog.

See Also

Protected Methods

protected String paramString ()

Returns a string representing the state of this dialog. This method is intended to be used only for debugging purposes, and the content and format of the returned string may vary between implementations. The returned string may be empty but may not be null.

Returns
  • the parameter string of this dialog window.