java.awt
Class Frame

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--java.awt.Window
                    |
                    +--java.awt.Frame
All Implemented Interfaces:
Accessible, ImageObserver, MenuContainer, Serializable
Direct Known Subclasses:
JFrame

public class Frame
extends Window
implements MenuContainer

A Frame is a top-level window with a title and a border.

The size of the frame 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 frame is made displayable by either calling pack or show. Since the border area is included in the overall size of the frame, the border effectively obscures a portion of the frame, 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 frame is BorderLayout.

In a multi-screen environment, you can create a Frame on a different screen device by constructing the Frame with Frame(GraphicsConfiguration) or Frame(String title, GraphicsConfiguration). The GraphicsConfiguration object is one of the GraphicsConfiguration objects of the target screen device.

In a virtual device multi-screen environment in which the desktop area could span multiple physical screen devices, the bounds of all configurations are relative to the virtual-coordinate system. The origin of the virtual-coordinate system is at the upper left-hand corner of the primary physical screen. Depending on the location of the primary screen in the virtual device, negative coordinates are possible, as shown in the following figure.

ALIGN=center HSPACE=10 VSPACE=7>

In such an environment, when calling setLocation, you must pass a virtual coordinate to this method. Similarly, calling getLocationOnScreen on a Frame returns virtual device coordinates. Call the getBounds method of a GraphicsConfiguration to find its origin in the virtual coordinate system.

The following code sets the location of the Frame at (10, 10) relative to the origin of the physical screen of the corresponding GraphicsConfiguration. If the bounds of the GraphicsConfiguration is not taken into account, the Frame location would be set at (10, 10) relative to the virtual-coordinate system and would appear on the primary physical screen, which might be different from the physical screen of the specified GraphicsConfiguration.

      Frame f = new Frame(GraphicsConfiguration gc);
      Rectangle bounds = gc.getBounds();
      f.setLocation(10 + bounds.x, 10 + bounds.y);
 

Frames are capable of generating the following types of window events: WindowOpened, WindowClosing, WindowClosed, WindowIconified, WindowDeiconified, WindowActivated, WindowDeactivated.

Since:
JDK1.0
See Also:
WindowEvent, Window.addWindowListener(java.awt.event.WindowListener), Serialized Form

Inner Class Summary
protected  class Frame.AccessibleAWTFrame
Frame.AccessibleAWTFrame
This class implements accessibility support for the Frame class. It provides an implementation of the Java Accessibility API appropriate to frame user-interface elements.
 
Inner classes inherited from class java.awt.Window
Window.AccessibleAWTWindow
 
Inner classes inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Inner classes inherited from class java.awt.Component
Component.AccessibleAWTComponent
 
Field Summary
static int CROSSHAIR_CURSOR
copy->  CROSSHAIR_CURSOR
Deprecated. replaced by Cursor.CROSSHAIR_CURSOR.

static int DEFAULT_CURSOR
copy->  DEFAULT_CURSOR
Deprecated. replaced by Cursor.DEFAULT_CURSOR.

static int E_RESIZE_CURSOR
copy->  E_RESIZE_CURSOR
Deprecated. replaced by Cursor.E_RESIZE_CURSOR.

static int HAND_CURSOR
copy->  HAND_CURSOR
Deprecated. replaced by Cursor.HAND_CURSOR.

static int ICONIFIED
copy->  ICONIFIED
static int MOVE_CURSOR
copy->  MOVE_CURSOR
Deprecated. replaced by Cursor.MOVE_CURSOR.

static int N_RESIZE_CURSOR
copy->  N_RESIZE_CURSOR
Deprecated. replaced by Cursor.N_RESIZE_CURSOR.

static int NE_RESIZE_CURSOR
copy->  NE_RESIZE_CURSOR
Deprecated. replaced by Cursor.NE_RESIZE_CURSOR.

static int NORMAL
copy->  NORMAL
static int NW_RESIZE_CURSOR
copy->  NW_RESIZE_CURSOR
Deprecated. replaced by Cursor.NW_RESIZE_CURSOR.

static int S_RESIZE_CURSOR
copy->  S_RESIZE_CURSOR
Deprecated. replaced by Cursor.S_RESIZE_CURSOR.

static int SE_RESIZE_CURSOR
copy->  SE_RESIZE_CURSOR
Deprecated. replaced by Cursor.SE_RESIZE_CURSOR.

static int SW_RESIZE_CURSOR
copy->  SW_RESIZE_CURSOR
Deprecated. replaced by Cursor.SW_RESIZE_CURSOR.

static int TEXT_CURSOR
copy->  TEXT_CURSOR
Deprecated. replaced by Cursor.TEXT_CURSOR.

static int W_RESIZE_CURSOR
copy->  W_RESIZE_CURSOR
Deprecated. replaced by Cursor.W_RESIZE_CURSOR.

static int WAIT_CURSOR
copy->  WAIT_CURSOR
Deprecated. replaced by Cursor.WAIT_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
 
Constructor Summary
Frame
copy->  new Frame()
copy->  <Frame var> = new Frame();
Constructs a new instance of Frame that is initially invisible. The title of the Frame is empty.
See Also:
Component.setSize(int, int), Component.setVisible(boolean)
Frame
copy->  new Frame( )
copy->  <Frame var> = new Frame(<GraphicsConfiguration gc>);
Create a Frame with the specified GraphicsConfiguration of a screen device.
Parameters:
gc - the GraphicsConfiguration of the target screen device. If gc is null, the system default GraphicsConfiguration is assumed.
Throws:
IllegalArgumentException - if gc is not from a screen device.
Since:
1.3
Frame
copy->  new Frame( )
copy->  <Frame var> = new Frame(<String title>);
Constructs a new, initially invisible Frame object with the specified title.
Parameters:
title - the title to be displayed in the frame's border. A null value is treated as an empty string, "".
Throws:
IllegalArgumentException - if gc is not from a screen device.
See Also:
Component.setSize(int, int), Component.setVisible(boolean), GraphicsConfiguration.getBounds()
Frame
copy->  new Frame(, )
copy->  <Frame var> = new Frame(<String title>, <GraphicsConfiguration gc>);
Constructs a new, initially invisible Frame object with the specified title and a GraphicsConfiguration.
Parameters:
title - the title to be displayed in the frame's border. A null value is treated as an empty string, "".
gc - the GraphicsConfiguration of the target screen device. If gc is null, the system default GraphicsConfiguration is assumed.
Throws:
IllegalArgumentException - if gc is not from a screen device.
See Also:
Component.setSize(int, int), Component.setVisible(boolean), GraphicsConfiguration.getBounds()
 
Method Summary
 void addNotify()
copy->  .addNotify()
copy->  <Frame>.addNotify();
Makes this Frame displayable by connecting it to a native screen resource. Making a frame 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.
Overrides:
addNotify in class Window
See Also:
Component.isDisplayable(), removeNotify()
protected  void finalize()
copy->  .finalize()
copy->  <Frame>.finalize();
We have to remove the (hard) reference to weakThis in the Vector, otherwise the WeakReference instance will never get garbage collected.
Overrides:
finalize in class Window
Following copied from class: java.lang.Object
Throws:
Throwable - the Exception raised by this method
 AccessibleContext getAccessibleContext()
copy->  .getAccessibleContext()
copy->  <AccessibleContext var>=<Frame>.getAccessibleContext();
Gets the AccessibleContext associated with this Frame. For frames, the AccessibleContext takes the form of an AccessibleAWTFrame. A new AccessibleAWTFrame instance is created if necessary.
Overrides:
getAccessibleContext in class Window
Returns:
an AccessibleAWTFrame that serves as the AccessibleContext of this Frame
 int getCursorType()
copy->  .getCursorType()
copy->  <int var>=<Frame>.getCursorType();
Deprecated. As of JDK version 1.1, replaced by Component.getCursor().

static Frame[] getFrames()
copy->  Frame.getFrames()
copy->  <Frame var>=Frame.getFrames();
Returns an array containing all Frames created by the application. If called from an applet, the array will only include the Frames accessible by that applet.
Since:
1.2
 Image getIconImage()
copy->  .getIconImage()
copy->  <Image var>=<Frame>.getIconImage();
Gets the image to be displayed in the minimized icon for this frame.
Returns:
the icon image for this frame, or null if this frame doesn't have an icon image.
See Also:
setIconImage(java.awt.Image)
 MenuBar getMenuBar()
copy->  .getMenuBar()
copy->  <MenuBar var>=<Frame>.getMenuBar();
Gets the menu bar for this frame.
Returns:
the menu bar for this frame, or null if this frame doesn't have a menu bar.
See Also:
setMenuBar(java.awt.MenuBar)
 int getState()
copy->  .getState()
copy->  <int var>=<Frame>.getState();
Gets the state of this frame.
Returns:
Frame.ICONIFIED if frame in iconic state; Frame.NORMAL if frame is in normal state.
See Also:
setState(int)
 String getTitle()
copy->  .getTitle()
copy->  <String var>=<Frame>.getTitle();
Gets the title of the frame. The title is displayed in the frame's border.
Returns:
the title of this frame, or an empty string ("") if this frame doesn't have a title.
See Also:
setTitle(java.lang.String)
 boolean isResizable()
copy->  .isResizable()
copy->  <boolean var>=<Frame>.isResizable();
Indicates whether this frame is resizable by the user. By default, all frames are initially resizable.
Returns:
true if the user can resize this frame; false otherwise.
See Also:
setResizable(boolean)
protected  String paramString()
copy->  .paramString()
copy->  <String var>=<Frame>.paramString();
Returns the parameter String of this Frame.
Overrides:
paramString in class Container
Following copied from class: java.awt.Container
Returns:
the parameter string of this container.
 void remove(MenuComponent m)
copy->  .remove( )
copy->  <Frame>.remove(<MenuComponent m>);
Removes the specified menu bar from this frame.
Specified by:
remove in interface MenuContainer
Overrides:
remove in class Component
Parameters:
m - the menu component to remove. If this parameter is null then a NullPointerException is thrown and no action is taken.
 void removeNotify()
copy->  .removeNotify()
copy->  <Frame>.removeNotify();
Makes this Frame undisplayable by removing its connection to its native screen resource. Making a Frame undisplayable will cause any of its children to be made undisplayable. This method is called by the toolkit internally and should not be called directly by programs.
Overrides:
removeNotify in class Container
See Also:
Component.isDisplayable(), addNotify()
 void setCursor(int cursorType)
copy->  .setCursor( )
copy->  <Frame>.setCursor(<int cursorType>);
Deprecated. As of JDK version 1.1, replaced by Component.setCursor(Cursor).

 void setIconImage(Image image)
copy->  .setIconImage( )
copy->  <Frame>.setIconImage(<Image image>);
Sets the image to displayed in the minimized icon for this frame. Not all platforms support the concept of minimizing a window.
Parameters:
image - the icon image to be displayed. If this parameter is null then the icon image is set to the default image, which may vary with platform.
See Also:
getIconImage()
 void setMenuBar(MenuBar mb)
copy->  .setMenuBar( )
copy->  <Frame>.setMenuBar(<MenuBar mb>);
Sets the menu bar for this frame to the specified menu bar.
Parameters:
mb - the menu bar being set. If this parameter is null then any existing menu bar on this frame is removed.
See Also:
getMenuBar()
 void setResizable(boolean resizable)
copy->  .setResizable( )
copy->  <Frame>.setResizable(<boolean resizable>);
Sets whether this frame is resizable by the user.
Parameters:
resizable - true if this frame is resizable; false otherwise.
See Also:
isResizable()
 void setState(int state)
copy->  .setState( )
copy->  <Frame>.setState(<int state>);
Sets the state of this frame.
Parameters:
state - Frame.ICONIFIED if this frame is in iconic state; Frame.NORMAL if this frame is in normal state.
See Also:
getState()
 void setTitle(String title)
copy->  .setTitle( )
copy->  <Frame>.setTitle(<String title>);
Sets the title for this frame to the specified string.
Parameters:
title - the title to be displayed in the frame's border
title - the title to be displayed in the frame's border. A null value is treated as an empty string, "".
See Also:
getTitle()
 
Methods inherited from class java.awt.Window
addWindowListener, applyResourceBundle, applyResourceBundle, dispose, getFocusOwner, getGraphicsConfiguration, getInputContext, getListeners, getLocale, getOwnedWindows, getOwner, getToolkit, getWarningString, hide, isShowing, pack, postEvent, processEvent, processWindowEvent, removeWindowListener, setCursor, show, toBack, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getInsets, getLayout, getMaximumSize, getMinimumSize, getPreferredSize, insets, invalidate, isAncestorOf, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, remove, removeAll, removeContainerListener, setFont, setLayout, update, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addPropertyChangeListener, addPropertyChangeListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, getBackground, getBounds, getBounds, getColorModel, getComponentOrientation, getCursor, getDropTarget, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getInputMethodRequests, getLocation, getLocation, getLocationOnScreen, getName, getParent, getPeer, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isDisplayable, isDoubleBuffered, isEnabled, isFocusTraversable, isLightweight, isOpaque, 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, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setDropTarget, setEnabled, setForeground, setLocale, setLocation, setLocation, setName, setSize, setSize, setVisible, show, size, toString, transferFocus
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent