9.3 The JDesktopPane Class


JDesktopPane is an extension of JLayeredPane, which uses a DesktopManager to control the placement and movement of frames. Figure 9-3 shows what JDesktopPane looks like in several L&Fs. Like its superclass, JLayeredPane has a null layout manager. Components added to it must be placed at absolute locations with absolute sizes because it is intended to house JInternalFrames, which rely on the user to determine their placement.

Figure 9-3. JDesktopPanes in four L&Fs
figs/swng2.0903.gif

Another reason for using JDesktopPane is to allow pop-up dialog boxes to be displayed using JInternalFrames. This is discussed in detail in the next chapter.

9.3.1 Properties

Table 9-4 shows the properties defined by JDesktopPane. The allFrames property provides access to all JInternalFrames contained by the desktop. The desktopManager property holds the DesktopManager object supplied by the pane's L&F. (We'll cover the responsibilities of the DesktopManager in the next section.) The opaque property defaults to true for JDesktopPanes, and isOpaque( ) is overridden so that it always returns true. UI contains the DesktopPaneUI implementation, and UIClassID contains the class ID for JDesktopPane.

Table 9-4. JDesktopPane properties

Property

Data type

get

is

set

Default value

accessibleContexto

AccessibleContext

·

   

JDesktopPane.AccessibleJDesktopPane( )

allFrames

JInternalFrame[]

·

   

Empty array

desktopManager

DesktopManager

·

 

·

From L&F

dragMode1.3

int

·

 

·

LIVE_DRAG_MODE

opaqueo

boolean

 

·

·

true

selectedFrame1.3

JInternalFrame

·

 

·

Depends on current state

UI

DesktopPaneUI

·

 

·

From L&F

UIClassIDo

String

·

   

"DesktopPaneUI"

1.3since 1.3, ooverridden

See also properties from the JLayeredPane class (Table 8-5).

9.3.2 Constructor

public JDesktopPane( )

Create a new desktop and call updateUI( ), resulting in the L&F implementation installing a DesktopManager.

9.3.3 Methods

public JInternalFrame[] getAllFramesInLayer(int layer)

Return all frames that have been added to the specified layer. This includes frames that have been iconified.

public void updateUI( )

Called to indicate that the L&F for the desktop should be set.



Java Swing
Graphic Java 2: Mastering the Jfc, By Geary, 3Rd Edition, Volume 2: Swing
ISBN: 0130796670
EAN: 2147483647
Year: 2001
Pages: 289
Authors: David Geary

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net