|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object java.awt.Component java.awt.Container java.awt.Window java.awt.Dialog javax.swing.JDialog
public class JDialog
The main class for creating a dialog window. You can use this class
to create a custom dialog, or invoke the many class methods
in JOptionPane
to create a variety of standard dialogs.
For information about creating dialogs, see
The Java Tutorial section
How
to Make Dialogs.
The JDialog
component contains a JRootPane
as its only child.
The contentPane
should be the parent of any children of the
JDialog
.
As a conveniance add
and its variants, remove
and
setLayout
have been overridden to forward to the
contentPane
as necessary. This means you can write:
dialog.add(child);And the child will be added to the contentPane. The
contentPane
is always non-null
.
Attempting to set it to null
generates an exception.
The default contentPane
has a BorderLayout
manager set on it.
Refer to RootPaneContainer
for details on adding, removing and setting the LayoutManager
of a JDialog
.
Please see the JRootPane
documentation for a complete
description of the contentPane
, glassPane
,
and layeredPane
components.
In a multi-screen environment, you can create a JDialog
on a different screen device than its owner. See Frame
for
more information.
Warning:
Serialized objects of this class will not be compatible with
future Swing releases. The current serialization support is
appropriate for short term storage or RMI between applications running
the same version of Swing. As of 1.4, support for long term storage
of all JavaBeansTM
has been added to the java.beans
package.
Please see XMLEncoder
.
JOptionPane
,
JRootPane
,
RootPaneContainer
Nested Class Summary | |
---|---|
protected class |
JDialog.AccessibleJDialog
This class implements accessibility support for the JDialog class. |
Nested classes/interfaces inherited from class java.awt.Dialog |
---|
Dialog.AccessibleAWTDialog |
Nested classes/interfaces inherited from class java.awt.Window |
---|
Window.AccessibleAWTWindow |
Nested classes/interfaces inherited from class java.awt.Container |
---|
Container.AccessibleAWTContainer |
Nested classes/interfaces inherited from class java.awt.Component |
---|
Component.AccessibleAWTComponent, Component.BltBufferStrategy, Component.FlipBufferStrategy |
Field Summary | |
---|---|
protected AccessibleContext |
accessibleContext
|
protected JRootPane |
rootPane
|
protected boolean |
rootPaneCheckingEnabled
If true then calls to add and setLayout
will be forwarded to the contentPane . |
Fields inherited from class java.awt.Component |
---|
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT |
Fields inherited from interface javax.swing.WindowConstants |
---|
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE |
Fields inherited from interface java.awt.image.ImageObserver |
---|
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH |
Constructor Summary | |
---|---|
JDialog()
Creates a non-modal dialog without a title and without a specified Frame owner. |
|
JDialog(Dialog owner)
Creates a non-modal dialog without a title with the specified Dialog as its owner. |
|
JDialog(Dialog owner,
boolean modal)
Creates a modal or non-modal dialog without a title and with the specified owner dialog. |
|
JDialog(Dialog owner,
String title)
Creates a non-modal dialog with the specified title and with the specified owner dialog. |
|
JDialog(Dialog owner,
String title,
boolean modal)
Creates a modal or non-modal dialog with the specified title and the specified owner frame. |
|
JDialog(Dialog owner,
String title,
boolean modal,
GraphicsConfiguration gc)
Creates a modal or non-modal dialog with the specified title, owner Dialog , and GraphicsConfiguration . |
|
JDialog(Frame owner)
Creates a non-modal dialog without a title with the specified Frame as its owner. |
|
JDialog(Frame owner,
boolean modal)
Creates a modal or non-modal dialog without a title and with the specified owner Frame . |
|
JDialog(Frame owner,
String title)
Creates a non-modal dialog with the specified title and with the specified owner frame. |
|
JDialog(Frame owner,
String title,
boolean modal)
Creates a modal or non-modal dialog with the specified title and the specified owner Frame . |
|
JDialog(Frame owner,
String title,
boolean modal,
GraphicsConfiguration gc)
Creates a modal or non-modal dialog with the specified title, owner Frame , and GraphicsConfiguration . |
Method Summary | |
---|---|
protected void |
addImpl(Component comp,
Object constraints,
int index)
Adds the specified child Component . |
protected JRootPane |
createRootPane()
Called by the constructor methods to create the default rootPane . |
protected void |
dialogInit()
Called by the constructors to init the JDialog properly. |
AccessibleContext |
getAccessibleContext()
Gets the AccessibleContext associated with this JDialog. |
Container |
getContentPane()
Returns the contentPane object for this dialog. |
int |
getDefaultCloseOperation()
Returns the operation which occurs when the user initiates a "close" on this dialog. |
Component |
getGlassPane()
Returns the glassPane object for this dialog. |
JMenuBar |
getJMenuBar()
Returns the menubar set on this dialog. |
JLayeredPane |
getLayeredPane()
Returns the layeredPane object for this dialog. |
JRootPane |
getRootPane()
Returns the rootPane object for this dialog. |
static boolean |
isDefaultLookAndFeelDecorated()
Returns true if newly created JDialog s should have their
Window decorations provided by the current look and feel. |
protected boolean |
isRootPaneCheckingEnabled()
Returns whether calls to add and
setLayout are forwarded to the contentPane . |
protected String |
paramString()
Returns a string representation of this JDialog . |
protected void |
processWindowEvent(WindowEvent e)
Handles window events depending on the state of the defaultCloseOperation property. |
void |
remove(Component comp)
Removes the specified component from the container. |
void |
setContentPane(Container contentPane)
Sets the contentPane property. |
void |
setDefaultCloseOperation(int operation)
Sets the operation which will happen by default when the user initiates a "close" on this dialog. |
static void |
setDefaultLookAndFeelDecorated(boolean defaultLookAndFeelDecorated)
Provides a hint as to whether or not newly created JDialog s
should have their Window decorations (such as borders, widgets to
close the window, title...) provided by the current look
and feel. |
void |
setGlassPane(Component glassPane)
Sets the glassPane property. |
void |
setJMenuBar(JMenuBar menu)
Sets the menubar for this dialog. |
void |
setLayeredPane(JLayeredPane layeredPane)
Sets the layeredPane property. |
void |
setLayout(LayoutManager manager)
Sets the LayoutManager . |
protected void |
setRootPane(JRootPane root)
Sets the rootPane property. |
protected void |
setRootPaneCheckingEnabled(boolean enabled)
Sets whether calls to add and
setLayout are forwarded to the contentPane . |
void |
update(Graphics g)
Calls paint(g) . |
Methods inherited from class java.awt.Dialog |
---|
addNotify, getTitle, hide, isModal, isResizable, isUndecorated, setModal, setResizable, setTitle, setUndecorated, show |
Methods inherited from class java.lang.Object |
---|
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
protected JRootPane rootPane
getRootPane()
,
setRootPane(javax.swing.JRootPane)
protected boolean rootPaneCheckingEnabled
add
and setLayout
will be forwarded to the contentPane
. This is initially
false, but is set to true when the JDialog
is constructed.
isRootPaneCheckingEnabled()
,
setRootPaneCheckingEnabled(boolean)
,
RootPaneContainer
protected AccessibleContext accessibleContext
Constructor Detail |
---|
public JDialog() throws HeadlessException
Frame
owner. A shared, hidden frame will be
set as the owner of the dialog.
This constructor sets the component's locale property to the value
returned by JComponent.getDefaultLocale
.
HeadlessException
- if GraphicsEnvironment.isHeadless()
returns true.GraphicsEnvironment.isHeadless()
,
JComponent.getDefaultLocale()
public JDialog(Frame owner) throws HeadlessException
Frame
as its owner. If owner
is null
, a shared, hidden frame will be set as the
owner of the dialog.
This constructor sets the component's locale property to the value
returned by JComponent.getDefaultLocale
.
owner
- the Frame
from which the dialog is displayed
HeadlessException
- if GraphicsEnvironment.isHeadless()
returns true.GraphicsEnvironment.isHeadless()
,
JComponent.getDefaultLocale()
public JDialog(Frame owner, boolean modal) throws HeadlessException
Frame
. If owner
is null
, a shared, hidden frame will be set as the
owner of the dialog.
This constructor sets the component's locale property to the value
returned by JComponent.getDefaultLocale
.
owner
- the Frame
from which the dialog is displayedmodal
- true for a modal dialog, false for one that allows
others windows to be active at the same time
HeadlessException
- if GraphicsEnvironment.isHeadless()
returns true.GraphicsEnvironment.isHeadless()
,
JComponent.getDefaultLocale()
public JDialog(Frame owner, String title) throws HeadlessException
owner
is null
, a shared, hidden frame will be set as the
owner of the dialog.
This constructor sets the component's locale property to the value
returned by JComponent.getDefaultLocale
.
owner
- the Frame
from which the dialog is displayedtitle
- the String
to display in the dialog's
title bar
HeadlessException
- if GraphicsEnvironment.isHeadless()
returns true.GraphicsEnvironment.isHeadless()
,
JComponent.getDefaultLocale()
public JDialog(Frame owner, String title, boolean modal) throws HeadlessException
Frame
. If owner
is null
, a shared, hidden frame will be set as the
owner of this dialog. All constructors defer to this one.
NOTE: Any popup components (JComboBox
,
JPopupMenu
, JMenuBar
)
created within a modal dialog will be forced to be lightweight.
This constructor sets the component's locale property to the value
returned by JComponent.getDefaultLocale
.
owner
- the Frame
from which the dialog is displayedtitle
- the String
to display in the dialog's
title barmodal
- true for a modal dialog, false for one that allows
other windows to be active at the same time
HeadlessException
- if GraphicsEnvironment.isHeadless()
returns true.GraphicsEnvironment.isHeadless()
,
JComponent.getDefaultLocale()
public JDialog(Frame owner, String title, boolean modal, GraphicsConfiguration gc)
Frame
, and GraphicsConfiguration
.
NOTE: Any popup components (JComboBox
,
JPopupMenu
, JMenuBar
)
created within a modal dialog will be forced to be lightweight.
This constructor sets the component's locale property to the value
returned by JComponent.getDefaultLocale
.
owner
- the Frame
from which the dialog is displayedtitle
- the String
to display in the dialog's
title barmodal
- true for a modal dialog, false for one that allows
other windows to be active at the same timegc
- the GraphicsConfiguration
of the target screen device. If gc
is
null
, the same
GraphicsConfiguration
as the owning Frame is used.
HeadlessException
- if GraphicsEnvironment.isHeadless()
returns true.GraphicsEnvironment.isHeadless()
,
JComponent.getDefaultLocale()
public JDialog(Dialog owner) throws HeadlessException
Dialog
as its owner.
This constructor sets the component's locale property to the value
returned by JComponent.getDefaultLocale
.
owner
- the non-null Dialog
from which the dialog is displayed
HeadlessException
- if GraphicsEnvironment.isHeadless()
returns true.GraphicsEnvironment.isHeadless()
,
JComponent.getDefaultLocale()
public JDialog(Dialog owner, boolean modal) throws HeadlessException
This constructor sets the component's locale property to the value
returned by JComponent.getDefaultLocale
.
owner
- the non-null Dialog
from which the dialog is displayedmodal
- true for a modal dialog, false for one that allows
other windows to be active at the same time
HeadlessException
- if GraphicsEnvironment.isHeadless()
returns true.GraphicsEnvironment.isHeadless()
,
JComponent.getDefaultLocale()
public JDialog(Dialog owner, String title) throws HeadlessException
This constructor sets the component's locale property to the value
returned by JComponent.getDefaultLocale
.
owner
- the non-null Dialog
from which the dialog is displayedtitle
- the String
to display in the dialog's
title bar
HeadlessException
- if GraphicsEnvironment.isHeadless()
returns true.GraphicsEnvironment.isHeadless()
,
JComponent.getDefaultLocale()
public JDialog(Dialog owner, String title, boolean modal) throws HeadlessException
This constructor sets the component's locale property to the value
returned by JComponent.getDefaultLocale
.
owner
- the non-null Dialog
from which the dialog is displayedtitle
- the String
to display in the dialog's
title barmodal
- true for a modal dialog, false for one that allows
other windows to be active at the same time
HeadlessException
- if GraphicsEnvironment.isHeadless()
returns true.GraphicsEnvironment.isHeadless()
,
JComponent.getDefaultLocale()
public JDialog(Dialog owner, String title, boolean modal, GraphicsConfiguration gc) throws HeadlessException
Dialog
, and GraphicsConfiguration
.
NOTE: Any popup components (JComboBox
,
JPopupMenu
, JMenuBar
)
created within a modal dialog will be forced to be lightweight.
This constructor sets the component's locale property to the value
returned by JComponent.getDefaultLocale
.
owner
- the Dialog
from which the dialog is displayedtitle
- the String
to display in the dialog's
title barmodal
- true for a modal dialog, false for one that allows
other windows to be active at the same timegc
- the GraphicsConfiguration
of the target screen device. If gc
is
null
, the same
GraphicsConfiguration
as the owning Dialog is used.
HeadlessException
- if GraphicsEnvironment.isHeadless()GraphicsEnvironment.isHeadless()
,
returns true.
Method Detail |
---|
protected void dialogInit()
JDialog
properly.
protected JRootPane createRootPane()
rootPane
.
protected void processWindowEvent(WindowEvent e)
defaultCloseOperation
property.
processWindowEvent
in class Window
e
- the window eventsetDefaultCloseOperation(int)
public void setDefaultCloseOperation(int operation)
DO_NOTHING_ON_CLOSE
- do not do anything - require the
program to handle the operation in the windowClosing
method of a registered WindowListener
object.
HIDE_ON_CLOSE
- automatically hide the dialog after
invoking any registered WindowListener
objects
DISPOSE_ON_CLOSE
- automatically hide and dispose the
dialog after invoking any registered WindowListener
objects
The value is set to HIDE_ON_CLOSE
by default.
Note: When the last displayable window within the Java virtual machine (VM) is disposed of, the VM may terminate. See AWT Threading Issues for more information.
Window.addWindowListener(java.awt.event.WindowListener)
,
getDefaultCloseOperation()
public int getDefaultCloseOperation()
setDefaultCloseOperation(int)
public void update(Graphics g)
paint(g)
. This method was overridden to
prevent an unnecessary call to clear the background.
update
in class Container
g
- the Graphics
context in which to paintComponent.update(Graphics)
public void setJMenuBar(JMenuBar menu)
menu
- the menubar being placed in the dialoggetJMenuBar()
public JMenuBar getJMenuBar()
setJMenuBar(javax.swing.JMenuBar)
protected boolean isRootPaneCheckingEnabled()
add
and
setLayout
are forwarded to the contentPane
.
add
and setLayout
are fowarded; false otherwiseaddImpl(java.awt.Component, java.lang.Object, int)
,
setLayout(java.awt.LayoutManager)
,
setRootPaneCheckingEnabled(boolean)
,
RootPaneContainer
protected void setRootPaneCheckingEnabled(boolean enabled)
add
and
setLayout
are forwarded to the contentPane
.
enabled
- true if add
and setLayout
are forwarded, false if they should operate directly on the
JDialog
.addImpl(java.awt.Component, java.lang.Object, int)
,
setLayout(java.awt.LayoutManager)
,
isRootPaneCheckingEnabled()
,
RootPaneContainer
protected void addImpl(Component comp, Object constraints, int index)
Component
.
This method is overridden to conditionally forwad calls to the
contentPane
.
By default, children are added to the contentPane
instead
of the frame, refer to RootPaneContainer
for
details.
addImpl
in class Container
comp
- the component to be enhancedconstraints
- the constraints to be respectedindex
- the index
IllegalArgumentException
- if index
is invalid
IllegalArgumentException
- if adding the container's parent
to itself
IllegalArgumentException
- if adding a window to a containersetRootPaneCheckingEnabled(boolean)
,
RootPaneContainer
public void remove(Component comp)
comp
is not the rootPane
, this will forward
the call to the contentPane
. This will do nothing if
comp
is not a child of the JDialog
or
contentPane
.
remove
in class Container
comp
- the component to be removed
NullPointerException
- if comp
is nullContainer.add(java.awt.Component)
,
RootPaneContainer
public void setLayout(LayoutManager manager)
LayoutManager
.
Overridden to conditionally forward the call to the
contentPane
.
Refer to RootPaneContainer
for
more information.
setLayout
in class Container
manager
- the LayoutManager
setRootPaneCheckingEnabled(boolean)
,
RootPaneContainer
public JRootPane getRootPane()
rootPane
object for this dialog.
getRootPane
in interface RootPaneContainer
setRootPane(javax.swing.JRootPane)
,
RootPaneContainer.getRootPane()
protected void setRootPane(JRootPane root)
rootPane
property.
This method is called by the constructor.
root
- the rootPane
object for this dialoggetRootPane()
public Container getContentPane()
contentPane
object for this dialog.
getContentPane
in interface RootPaneContainer
contentPane
propertysetContentPane(java.awt.Container)
,
RootPaneContainer.getContentPane()
public void setContentPane(Container contentPane)
contentPane
property.
This method is called by the constructor.
Swing's painting architecture requires an opaque JComponent
in the containment hiearchy. This is typically provided by the
content pane. If you replace the content pane it is recommended you
replace it with an opaque JComponent
.
setContentPane
in interface RootPaneContainer
contentPane
- the contentPane
object for this dialog
IllegalComponentStateException
- (a runtime
exception) if the content pane parameter is null
JRootPane
,
getContentPane()
,
RootPaneContainer.setContentPane(java.awt.Container)
public JLayeredPane getLayeredPane()
layeredPane
object for this dialog.
getLayeredPane
in interface RootPaneContainer
layeredPane
propertysetLayeredPane(javax.swing.JLayeredPane)
,
RootPaneContainer.getLayeredPane()
public void setLayeredPane(JLayeredPane layeredPane)
layeredPane
property.
This method is called by the constructor.
setLayeredPane
in interface RootPaneContainer
layeredPane
- the new layeredPane
property
IllegalComponentStateException
- (a runtime
exception) if the layered pane parameter is nullgetLayeredPane()
,
RootPaneContainer.setLayeredPane(javax.swing.JLayeredPane)
public Component getGlassPane()
glassPane
object for this dialog.
getGlassPane
in interface RootPaneContainer
glassPane
propertysetGlassPane(java.awt.Component)
,
RootPaneContainer.getGlassPane()
public void setGlassPane(Component glassPane)
glassPane
property.
This method is called by the constructor.
setGlassPane
in interface RootPaneContainer
glassPane
- the glassPane
object for this dialoggetGlassPane()
,
RootPaneContainer.setGlassPane(java.awt.Component)
public static void setDefaultLookAndFeelDecorated(boolean defaultLookAndFeelDecorated)
JDialog
s
should have their Window decorations (such as borders, widgets to
close the window, title...) provided by the current look
and feel. If defaultLookAndFeelDecorated
is true,
the current LookAndFeel
supports providing window
decorations, and the current window manager supports undecorated
windows, then newly created JDialog
s will have their
Window decorations provided by the current LookAndFeel
.
Otherwise, newly created JDialog
s will have their
Window decorations provided by the current window manager.
You can get the same effect on a single JDialog by doing the following:
JDialog dialog = new JDialog(); dialog.setUndecorated(true); dialog.getRootPane().setWindowDecorationStyle(JRootPane.PLAIN_DIALOG);
defaultLookAndFeelDecorated
- A hint as to whether or not current
look and feel should provide window decorationsLookAndFeel.getSupportsWindowDecorations()
public static boolean isDefaultLookAndFeelDecorated()
JDialog
s should have their
Window decorations provided by the current look and feel. This is only
a hint, as certain look and feels may not support this feature.
protected String paramString()
JDialog
.
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
.
paramString
in class Dialog
JDialog
.public AccessibleContext getAccessibleContext()
getAccessibleContext
in interface Accessible
getAccessibleContext
in class Dialog
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.