javax.swing

Class JFrame

Implemented Interfaces:
Accessible, ImageObserver, MenuContainer, RootPaneContainer, Serializable, WindowConstants

public class JFrame
extends Frame
implements WindowConstants, RootPaneContainer, Accessible

A window that supports window decorations (titlebar and borders). This is an extension of Frame that provides support for the Swing architecture. Most importantly it contains a JRootPane as it's only top-level child, that manages the content pane, the menu and a glass pane. Also, unlike java.awt.Frames, JFrames support the Swing Pluggable Look & Feel architecture.
See Also:
Serialized Form

Nested Class Summary

protected class
JFrame.AccessibleJFrame
Provides accessibility support for JFrames.

Nested classes/interfaces inherited from class java.awt.Frame

Frame.AccessibleAWTFrame

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

static int
EXIT_ON_CLOSE
A flag for setDefaultCloseOperation(int), indicating that the application should be exited, when this JFrame is closed.
protected AccessibleContext
accessibleContext
protected JRootPane
rootPane
protected boolean
rootPaneCheckingEnabled

Fields inherited from class java.awt.Frame

CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, N_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, S_RESIZE_CURSOR, TEXT_CURSOR, WAIT_CURSOR, W_RESIZE_CURSOR

Fields inherited from class java.awt.Component

BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT

Fields inherited from interface java.awt.image.ImageObserver

ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH

Fields inherited from interface javax.swing.WindowConstants

DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE

Constructor Summary

JFrame()
Creates a new frame with an empty string for the title.
JFrame(GraphicsConfiguration gc)
Creates a new JFrame in the specified GraphicsConfiguration and with an empty title.
JFrame(String title)
Creates a new JFrame with the specified title.
JFrame(String title, GraphicsConfiguration gc)
Creates a new JFrame in the specified GraphicsConfiguration and with the specified title.

Method Summary

protected void
addImpl(Component comp, Object constraints, int index)
protected JRootPane
createRootPane()
protected void
frameInit()
AccessibleContext
getAccessibleContext()
Returns the object that provides accessibility features for this JFrame.
Container
getContentPane()
int
getDefaultCloseOperation()
Returns a code for the default operation when the frame is closed.
Component
getGlassPane()
JMenuBar
getJMenuBar()
JLayeredPane
getLayeredPane()
Dimension
getPreferredSize()
JRootPane
getRootPane()
static boolean
isDefaultLookAndFeelDecorated()
protected boolean
isRootPaneCheckingEnabled()
protected String
paramString()
Returns a string describing the attributes for the JFrame, for use in debugging.
protected void
processKeyEvent(KeyEvent e)
protected void
processWindowEvent(WindowEvent e)
void
remove(Component comp)
void
setContentPane(Container contentPane)
void
setDefaultCloseOperation(int operation)
Sets the default operation that is performed when this frame is closed.
static void
setDefaultLookAndFeelDecorated(boolean decorated)
void
setGlassPane(Component glassPane)
void
setJMenuBar(JMenuBar menubar)
void
setLayeredPane(JLayeredPane layeredPane)
void
setLayout(LayoutManager manager)
protected void
setRootPane(JRootPane root)
protected void
setRootPaneCheckingEnabled(boolean enabled)
void
update(Graphics g)

Methods inherited from class java.awt.Frame

addNotify, getAccessibleContext, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, paramString, remove, removeNotify, setCursor, setExtendedState, setIconImage, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated

Methods inherited from class java.awt.Window

addNotify, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, extends EventListener> T[] getListeners, getAccessibleContext, getBufferStrategy, getFocusCycleRootAncestor, getFocusOwner, getFocusableWindowState, getGraphicsConfiguration, getLocale, getMostRecentFocusOwner, getOwnedWindows, getOwner, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindowStateListeners, isActive, isAlwaysOnTop, isFocusCycleRoot, isFocusableWindow, isFocused, isShowing, pack, postEvent, processEvent, processWindowEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, setAlwaysOnTop, setCursor, setFocusCycleRoot, setFocusableWindowState, setLocationRelativeTo, toBack, toFront, void hide, void show

Methods inherited from class java.awt.Container

add, add, add, add, add, addContainerListener, addImpl, addNotify, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, extends EventListener> T[] getListeners, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponentZOrder, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, paramString, preferredSize, print, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, removeNotify, setComponentZOrder, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, setLayout, transferFocusDownCycle, update, validate, validateTree

Methods inherited from class java.awt.Component

action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, deliverEvent, disable, disableEvents, dispatchEvent, doLayout, enable, enable, enableEvents, enableInputMethods, extends EventListener> T[] getListeners, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getAccessibleContext, getAlignmentX, getAlignmentY, getBackground, getBounds, getBounds, getColorModel, getComponentAt, getComponentAt, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeys, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocation, getLocationOnScreen, getMaximumSize, getMinimumSize, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPreferredSize, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, invalidate, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusCycleRoot, isFocusOwner, isFocusTraversable, isFocusable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, layout, list, list, list, list, list, locate, location, lostFocus, minimumSize, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paint, paintAll, paramString, postEvent, preferredSize, prepareImage, prepareImage, print, printAll, processComponentEvent, processEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusTraversalKeys, setFocusTraversalKeysEnabled, setFocusable, setFont, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle, update, validate

Methods inherited from class java.lang.Object

clone, equals, extends Object> getClass, finalize, hashCode, notify, notifyAll, toString, wait, wait, wait

Field Details

EXIT_ON_CLOSE

public static final int EXIT_ON_CLOSE
A flag for setDefaultCloseOperation(int), indicating that the application should be exited, when this JFrame is closed. Note that in version 1.4, the equivalent constant has been added to WindowConstants.
Field Value:
3
Since:
1.3

accessibleContext

protected AccessibleContext accessibleContext

rootPane

protected JRootPane rootPane

rootPaneCheckingEnabled

protected boolean rootPaneCheckingEnabled

Constructor Details

JFrame

public JFrame()
Creates a new frame with an empty string for the title.

JFrame

public JFrame(GraphicsConfiguration gc)
Creates a new JFrame in the specified GraphicsConfiguration and with an empty title.
Parameters:
gc - the GraphicsConfiguration that is used for the new JFrame

JFrame

public JFrame(String title)
Creates a new JFrame with the specified title.
Parameters:
title - the frame title (null permitted).

JFrame

public JFrame(String title,
              GraphicsConfiguration gc)
Creates a new JFrame in the specified GraphicsConfiguration and with the specified title.
Parameters:
title - the title for the new JFrame
gc - the GraphicsConfiguration that is used for the new JFrame

Method Details

addImpl

protected void addImpl(Component comp,
                       Object constraints,
                       int index)
Overrides:
addImpl in interface Container

createRootPane

protected JRootPane createRootPane()

frameInit

protected void frameInit()

getAccessibleContext

public AccessibleContext getAccessibleContext()
Returns the object that provides accessibility features for this JFrame.
Specified by:
getAccessibleContext in interface Accessible
Overrides:
getAccessibleContext in interface Frame
Returns:
The accessible context (an instance of JFrame.AccessibleJFrame).

getContentPane

public Container getContentPane()
Specified by:
getContentPane in interface RootPaneContainer

getDefaultCloseOperation

public int getDefaultCloseOperation()
Returns a code for the default operation when the frame is closed. The default value is WindowConstants.HIDE_ON_CLOSE.

getGlassPane

public Component getGlassPane()
Specified by:
getGlassPane in interface RootPaneContainer

getJMenuBar

public JMenuBar getJMenuBar()

getLayeredPane

public JLayeredPane getLayeredPane()
Specified by:
getLayeredPane in interface RootPaneContainer

getPreferredSize

public Dimension getPreferredSize()
Overrides:
getPreferredSize in interface Container

getRootPane

public JRootPane getRootPane()
Specified by:
getRootPane in interface RootPaneContainer

isDefaultLookAndFeelDecorated

public static boolean isDefaultLookAndFeelDecorated()

isRootPaneCheckingEnabled

protected boolean isRootPaneCheckingEnabled()

paramString

protected String paramString()
Returns a string describing the attributes for the JFrame, for use in debugging. The return value is guaranteed to be non-null, but the format may vary between implementations.
Overrides:
paramString in interface Frame
Returns:
A string describing the attributes of the JFrame.

processKeyEvent

protected void processKeyEvent(KeyEvent e)
Overrides:
processKeyEvent in interface Component

processWindowEvent

protected void processWindowEvent(WindowEvent e)
Overrides:
processWindowEvent in interface Window

remove

public void remove(Component comp)
Overrides:
remove in interface Container

setContentPane

public void setContentPane(Container contentPane)
Specified by:
setContentPane in interface RootPaneContainer

setDefaultCloseOperation

public void setDefaultCloseOperation(int operation)
Sets the default operation that is performed when this frame is closed. The default is HIDE_ON_CLOSE. When EXIT_ON_CLOSE is specified this method calls SecurityManager.checkExit(0) which might throw a SecurityException.
Throws:
IllegalArgumentException - if operation is not one of the specified codes.

setDefaultLookAndFeelDecorated

public static void setDefaultLookAndFeelDecorated(boolean decorated)

setGlassPane

public void setGlassPane(Component glassPane)
Specified by:
setGlassPane in interface RootPaneContainer

setJMenuBar

public void setJMenuBar(JMenuBar menubar)

setLayeredPane

public void setLayeredPane(JLayeredPane layeredPane)
Specified by:
setLayeredPane in interface RootPaneContainer

setLayout

public void setLayout(LayoutManager manager)
Overrides:
setLayout in interface Container

setRootPane

protected void setRootPane(JRootPane root)

setRootPaneCheckingEnabled

protected void setRootPaneCheckingEnabled(boolean enabled)

update

public void update(Graphics g)
Overrides:
update in interface Container

JFrame.java -- Copyright (C) 2002, 2004, 2005, 2006, Free Software Foundation, Inc. This file is part of GNU Classpath. GNU Classpath is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Classpath is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Classpath; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination. As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.