JDesktopPane (Java 2 Platform SE 5.0) (original) (raw)
javax.swing
Class JDesktopPane
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JLayeredPane
javax.swing.JDesktopPane
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, Accessible
public class JDesktopPane
extends JLayeredPane
implements Accessible
A container used to create a multiple-document interface or a virtual desktop. You create JInternalFrame
objects and add them to the JDesktopPane
. JDesktopPane
extendsJLayeredPane
to manage the potentially overlapping internal frames. It also maintains a reference to an instance ofDesktopManager
that is set by the UI class for the current look and feel (L&F). Note that JDesktopPane
does not support borders.
This class is normally used as the parent of JInternalFrames
to provide a pluggable DesktopManager
object to theJInternalFrames
. The installUI
of the L&F specific implementation is responsible for setting thedesktopManager
variable appropriately. When the parent of a JInternalFrame
is a JDesktopPane
, it should delegate most of its behavior to the desktopManager
(closing, resizing, etc).
For further documentation and examples seeHow to Use Internal Frames, a section in The Java Tutorial.
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.
See Also:
JInternalFrame, JInternalFrame.JDesktopIcon, DesktopManager
Nested Class Summary | |
---|---|
protected class | JDesktopPane.AccessibleJDesktopPane This class implements accessibility support for the JDesktopPane class. |
Nested classes/interfaces inherited from class javax.swing.JLayeredPane |
---|
JLayeredPane.AccessibleJLayeredPane |
Nested classes/interfaces inherited from class javax.swing.JComponent |
---|
JComponent.AccessibleJComponent |
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 | LIVE_DRAG_MODE Indicates that the entire contents of the item being dragged should appear inside the desktop pane. |
static int | OUTLINE_DRAG_MODE Indicates that an outline only of the item being dragged should appear inside the desktop pane. |
Fields inherited from class javax.swing.JLayeredPane |
---|
DEFAULT_LAYER, DRAG_LAYER, FRAME_CONTENT_LAYER, LAYER_PROPERTY, MODAL_LAYER, PALETTE_LAYER, POPUP_LAYER |
Fields inherited from class javax.swing.JComponent |
---|
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW |
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 |
---|
JDesktopPane() Creates a new JDesktopPane. |
Method Summary | |
---|---|
AccessibleContext | getAccessibleContext() Gets the AccessibleContext associated with thisJDesktopPane. |
JInternalFrame[] | getAllFrames() Returns all JInternalFrames currently displayed in the desktop. |
JInternalFrame[] | getAllFramesInLayer(int layer) Returns all JInternalFrames currently displayed in the specified layer of the desktop. |
DesktopManager | getDesktopManager() Returns the DesktopManger that handles desktop-specific UI actions. |
int | getDragMode() Gets the current "dragging style" used by the desktop pane. |
JInternalFrame | getSelectedFrame() Returns the currently active JInternalFrame in this JDesktopPane, or null if no JInternalFrame is currently active. |
DesktopPaneUI | getUI() Returns the L&F object that renders this component. |
String | getUIClassID() Returns the name of the L&F class that renders this component. |
boolean | isOpaque() Returns true to indicate that this component paints every pixel in its range. |
protected String | paramString() Returns a string representation of this JDesktopPane. |
void | setDesktopManager(DesktopManager d) Sets the DesktopManger that will handle desktop-specific UI actions. |
void | setDragMode(int dragMode) Sets the "dragging style" used by the desktop pane. |
void | setSelectedFrame(JInternalFrame f) Sets the currently active JInternalFrame in this JDesktopPane. |
void | setUI(DesktopPaneUI ui) Sets the L&F object that renders this component. |
void | updateUI() Notification from the UIManager that the L&F has changed. |
Methods inherited from class javax.swing.JLayeredPane |
---|
[addImpl](../../javax/swing/JLayeredPane.html#addImpl%28java.awt.Component, java.lang.Object, int%29), getComponentCountInLayer, getComponentsInLayer, getComponentToLayer, getIndexOf, getLayer, getLayer, getLayeredPaneAbove, getObjectForLayer, getPosition, highestLayer, [insertIndexForLayer](../../javax/swing/JLayeredPane.html#insertIndexForLayer%28int, int%29), isOptimizedDrawingEnabled, lowestLayer, moveToBack, moveToFront, paint, [putLayer](../../javax/swing/JLayeredPane.html#putLayer%28javax.swing.JComponent, int%29), remove, removeAll, [setLayer](../../javax/swing/JLayeredPane.html#setLayer%28java.awt.Component, int%29), [setLayer](../../javax/swing/JLayeredPane.html#setLayer%28java.awt.Component, int, int%29), [setPosition](../../javax/swing/JLayeredPane.html#setPosition%28java.awt.Component, int%29) |
Methods inherited from class javax.swing.JComponent |
---|
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, [contains](../../javax/swing/JComponent.html#contains%28int, int%29), createToolTip, disable, enable, [firePropertyChange](../../javax/swing/JComponent.html#firePropertyChange%28java.lang.String, boolean, boolean%29), [firePropertyChange](../../javax/swing/JComponent.html#firePropertyChange%28java.lang.String, char, char%29), [firePropertyChange](../../javax/swing/JComponent.html#firePropertyChange%28java.lang.String, int, int%29), [fireVetoableChange](../../javax/swing/JComponent.html#fireVetoableChange%28java.lang.String, java.lang.Object, java.lang.Object%29), getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paintBorder, paintChildren, paintComponent, [paintImmediately](../../javax/swing/JComponent.html#paintImmediately%28int, int, int, int%29), paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, [processKeyBinding](../../javax/swing/JComponent.html#processKeyBinding%28javax.swing.KeyStroke, java.awt.event.KeyEvent, int, boolean%29), processKeyEvent, processMouseEvent, processMouseMotionEvent, [putClientProperty](../../javax/swing/JComponent.html#putClientProperty%28java.lang.Object, java.lang.Object%29), [registerKeyboardAction](../../javax/swing/JComponent.html#registerKeyboardAction%28java.awt.event.ActionListener, javax.swing.KeyStroke, int%29), [registerKeyboardAction](../../javax/swing/JComponent.html#registerKeyboardAction%28java.awt.event.ActionListener, java.lang.String, javax.swing.KeyStroke, int%29), removeAncestorListener, removeNotify, removeVetoableChangeListener, [repaint](../../javax/swing/JComponent.html#repaint%28long, int, int, int, int%29), repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, [reshape](../../javax/swing/JComponent.html#reshape%28int, int, int, int%29), revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, [setFocusTraversalKeys](../../javax/swing/JComponent.html#setFocusTraversalKeys%28int, java.util.Set%29), setFont, setForeground, setInheritsPopupMenu, [setInputMap](../../javax/swing/JComponent.html#setInputMap%28int, javax.swing.InputMap%29), setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update |
Methods inherited from class java.awt.Container |
---|
add, [add](../../java/awt/Container.html#add%28java.awt.Component, int%29), [add](../../java/awt/Container.html#add%28java.awt.Component, java.lang.Object%29), [add](../../java/awt/Container.html#add%28java.awt.Component, java.lang.Object, int%29), [add](../../java/awt/Container.html#add%28java.lang.String, java.awt.Component%29), addContainerListener, addPropertyChangeListener, [addPropertyChangeListener](../../java/awt/Container.html#addPropertyChangeListener%28java.lang.String, java.beans.PropertyChangeListener%29), applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, [findComponentAt](../../java/awt/Container.html#findComponentAt%28int, int%29), findComponentAt, getComponent, [getComponentAt](../../java/awt/Container.html#getComponentAt%28int, int%29), getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, [list](../../java/awt/Container.html#list%28java.io.PrintStream, int%29), [list](../../java/awt/Container.html#list%28java.io.PrintWriter, int%29), [locate](../../java/awt/Container.html#locate%28int, int%29), minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, removeContainerListener, [setComponentZOrder](../../java/awt/Container.html#setComponentZOrder%28java.awt.Component, int%29), setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree |
Methods inherited from class java.awt.Component |
---|
[action](../../java/awt/Component.html#action%28java.awt.Event, java.lang.Object%29), add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, [checkImage](../../java/awt/Component.html#checkImage%28java.awt.Image, java.awt.image.ImageObserver%29), [checkImage](../../java/awt/Component.html#checkImage%28java.awt.Image, int, int, java.awt.image.ImageObserver%29), [coalesceEvents](../../java/awt/Component.html#coalesceEvents%28java.awt.AWTEvent, java.awt.AWTEvent%29), contains, createImage, [createImage](../../java/awt/Component.html#createImage%28int, int%29), [createVolatileImage](../../java/awt/Component.html#createVolatileImage%28int, int%29), [createVolatileImage](../../java/awt/Component.html#createVolatileImage%28int, int, java.awt.ImageCapabilities%29), disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, [firePropertyChange](../../java/awt/Component.html#firePropertyChange%28java.lang.String, byte, byte%29), [firePropertyChange](../../java/awt/Component.html#firePropertyChange%28java.lang.String, double, double%29), [firePropertyChange](../../java/awt/Component.html#firePropertyChange%28java.lang.String, float, float%29), [firePropertyChange](../../java/awt/Component.html#firePropertyChange%28java.lang.String, long, long%29), [firePropertyChange](../../java/awt/Component.html#firePropertyChange%28java.lang.String, java.lang.Object, java.lang.Object%29), [firePropertyChange](../../java/awt/Component.html#firePropertyChange%28java.lang.String, short, short%29), getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, [gotFocus](../../java/awt/Component.html#gotFocus%28java.awt.Event, java.lang.Object%29), handleEvent, hasFocus, hide, [imageUpdate](../../java/awt/Component.html#imageUpdate%28java.awt.Image, int, int, int, int, int%29), [inside](../../java/awt/Component.html#inside%28int, int%29), isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, [keyDown](../../java/awt/Component.html#keyDown%28java.awt.Event, int%29), [keyUp](../../java/awt/Component.html#keyUp%28java.awt.Event, int%29), list, list, list, location, [lostFocus](../../java/awt/Component.html#lostFocus%28java.awt.Event, java.lang.Object%29), [mouseDown](../../java/awt/Component.html#mouseDown%28java.awt.Event, int, int%29), [mouseDrag](../../java/awt/Component.html#mouseDrag%28java.awt.Event, int, int%29), [mouseEnter](../../java/awt/Component.html#mouseEnter%28java.awt.Event, int, int%29), [mouseExit](../../java/awt/Component.html#mouseExit%28java.awt.Event, int, int%29), [mouseMove](../../java/awt/Component.html#mouseMove%28java.awt.Event, int, int%29), [mouseUp](../../java/awt/Component.html#mouseUp%28java.awt.Event, int, int%29), [move](../../java/awt/Component.html#move%28int, int%29), nextFocus, paintAll, postEvent, [prepareImage](../../java/awt/Component.html#prepareImage%28java.awt.Image, java.awt.image.ImageObserver%29), [prepareImage](../../java/awt/Component.html#prepareImage%28java.awt.Image, int, int, java.awt.image.ImageObserver%29), processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, [removePropertyChangeListener](../../java/awt/Component.html#removePropertyChangeListener%28java.lang.String, java.beans.PropertyChangeListener%29), repaint, [repaint](../../java/awt/Component.html#repaint%28int, int, int, int%29), repaint, resize, [resize](../../java/awt/Component.html#resize%28int, int%29), [setBounds](../../java/awt/Component.html#setBounds%28int, int, int, int%29), setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, [setLocation](../../java/awt/Component.html#setLocation%28int, int%29), setLocation, setName, setSize, [setSize](../../java/awt/Component.html#setSize%28int, int%29), show, show, size, toString, transferFocus, transferFocusUpCycle |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, [wait](../../java/lang/Object.html#wait%28long, int%29) |
Field Detail |
---|
LIVE_DRAG_MODE
public static final int LIVE_DRAG_MODE
Indicates that the entire contents of the item being dragged should appear inside the desktop pane.
See Also:
OUTLINE_DRAG_MODE, setDragMode(int), Constant Field Values
OUTLINE_DRAG_MODE
public static final int OUTLINE_DRAG_MODE
Indicates that an outline only of the item being dragged should appear inside the desktop pane.
See Also:
LIVE_DRAG_MODE, setDragMode(int), Constant Field Values
Constructor Detail |
---|
JDesktopPane
public JDesktopPane()
Creates a new JDesktopPane
.
Method Detail |
---|
getUI
public DesktopPaneUI getUI()
Returns the L&F object that renders this component.
Returns:
the DesktopPaneUI
object that renders this component
setUI
public void setUI(DesktopPaneUI ui)
Sets the L&F object that renders this component.
Parameters:
ui
- the DesktopPaneUI L&F object
See Also:
UIDefaults.getUI(javax.swing.JComponent)
setDragMode
public void setDragMode(int dragMode)
Sets the "dragging style" used by the desktop pane. You may want to change to one mode or another for performance or aesthetic reasons.
Parameters:
dragMode
- the style of drag to use for items in the Desktop
See Also:
LIVE_DRAG_MODE, OUTLINE_DRAG_MODE
getDragMode
public int getDragMode()
Gets the current "dragging style" used by the desktop pane.
Returns:
either Live_DRAG_MODE
orOUTLINE_DRAG_MODE
See Also:
getDesktopManager
public DesktopManager getDesktopManager()
Returns the DesktopManger
that handles desktop-specific UI actions.
setDesktopManager
public void setDesktopManager(DesktopManager d)
Sets the DesktopManger
that will handle desktop-specific UI actions.
Parameters:
d
- the DesktopManager
to use
updateUI
public void updateUI()
Notification from the UIManager
that the L&F has changed. Replaces the current UI object with the latest version from the UIManager
.
Overrides:
[updateUI](../../javax/swing/JComponent.html#updateUI%28%29)
in class [JComponent](../../javax/swing/JComponent.html "class in javax.swing")
See Also:
getUIClassID
public String getUIClassID()
Returns the name of the L&F class that renders this component.
Overrides:
[getUIClassID](../../javax/swing/JComponent.html#getUIClassID%28%29)
in class [JComponent](../../javax/swing/JComponent.html "class in javax.swing")
Returns:
the string "DesktopPaneUI"
See Also:
JComponent.getUIClassID(), UIDefaults.getUI(javax.swing.JComponent)
getAllFrames
public JInternalFrame[] getAllFrames()
Returns all JInternalFrames
currently displayed in the desktop. Returns iconified frames as well as expanded frames.
Returns:
an array of JInternalFrame
objects
getSelectedFrame
public JInternalFrame getSelectedFrame()
Returns the currently active JInternalFrame
in this JDesktopPane
, or null
if no JInternalFrame
is currently active.
Returns:
the currently active JInternalFrame
ornull
Since:
1.3
setSelectedFrame
public void setSelectedFrame(JInternalFrame f)
Sets the currently active JInternalFrame
in this JDesktopPane
.
Parameters:
f
- the internal frame that's currently selected
Since:
1.3
getAllFramesInLayer
public JInternalFrame[] getAllFramesInLayer(int layer)
Returns all JInternalFrames
currently displayed in the specified layer of the desktop. Returns iconified frames as well expanded frames.
Parameters:
layer
- an int specifying the desktop layer
Returns:
an array of JInternalFrame
objects
See Also:
isOpaque
public boolean isOpaque()
Returns true to indicate that this component paints every pixel in its range. (In other words, it does not have a transparent background or foreground.)
Overrides:
[isOpaque](../../javax/swing/JComponent.html#isOpaque%28%29)
in class [JComponent](../../javax/swing/JComponent.html "class in javax.swing")
Returns:
true
See Also:
paramString
protected String paramString()
Returns a string representation of this JDesktopPane
. 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
.
Overrides:
[paramString](../../javax/swing/JLayeredPane.html#paramString%28%29)
in class [JLayeredPane](../../javax/swing/JLayeredPane.html "class in javax.swing")
Returns:
a string representation of this JDesktopPane
getAccessibleContext
public AccessibleContext getAccessibleContext()
Gets the AccessibleContext
associated with thisJDesktopPane
. For desktop panes, theAccessibleContext
takes the form of an AccessibleJDesktopPane
. A new AccessibleJDesktopPane
instance is created if necessary.
Specified by:
[getAccessibleContext](../../javax/accessibility/Accessible.html#getAccessibleContext%28%29)
in interface [Accessible](../../javax/accessibility/Accessible.html "interface in javax.accessibility")
Overrides:
[getAccessibleContext](../../javax/swing/JLayeredPane.html#getAccessibleContext%28%29)
in class [JLayeredPane](../../javax/swing/JLayeredPane.html "class in javax.swing")
Returns:
an AccessibleJDesktopPane
that serves as the AccessibleContext
of this JDesktopPane
Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 2004, 2010 Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.