Class JXFrame
- All Implemented Interfaces:
ImageObserver
,MenuContainer
,Serializable
,Accessible
,RootPaneContainer
,WindowConstants
- Direct Known Subclasses:
JXLoginPane.JXLoginFrame
JXFrame
is an enhanced JFrame
. While JXFrame
can
replace any JFrame
, it has features that make it particularly useful
as the "main" frame for an application.
Additional Features
Root pane: JXFrame
uses JXRootPane
as its default root pane.
The frame provide several convenience methods to provide easy access to the
additional features.
Idle: JXFrame
offers an idle timer. Registering a
PropertyChangeListener
for "idle" will notify when the
user has not interacted with the JVM. A primary use for this type of
functionality is to secure the application, blocking access and requiring the
user to login again.
Wait (busy) glass pane: The JXFrame
can be configured with an
alternate glass pane. Typically, this glass pane is used to notify the user
that the application is busy, but the glass pane could be for any purpose.
This secondary glass pane can be quickly enabled or disabled by
setting the wait pane visible.
- Author:
- unascribed from JDNC
- See Also:
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class javax.swing.JFrame
JFrame.AccessibleJFrame
Nested classes/interfaces inherited from class java.awt.Frame
Frame.AccessibleAWTFrame
Nested classes/interfaces inherited from class java.awt.Window
Window.AccessibleAWTWindow, Window.Type
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
Field Summary
Fields inherited from class javax.swing.JFrame
accessibleContext, rootPane, 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, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_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
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE
-
Constructor Summary
ConstructorsConstructorDescriptionJXFrame()
Creates aJXFrame
with no title and standard closing behavior.Creates aJXFrame
in the specifiedGraphicsConfiguration
of a screen device, a blank title and default closing behaviour.Creates aJXFrame
with the specified title and default closing behavior.Creates aJXFrame
with the specified title and closing behavior.JXFrame
(String title, GraphicsConfiguration gc) Creates aJXFrame
with the specified title, the specifiedGraphicsConfiguration
of a screen device and default closing behaviour.JXFrame
(String title, GraphicsConfiguration gc, boolean exitOnClose) Creates aJXFrame
with the specified title, GraphicsConfiguration and closing behavior. -
Method Summary
Modifier and TypeMethodDescriptionprotected JRootPane
Overridden to create a JXRootPane.Returns the value of the cancel button property from the underlyingJXRootPane
.Returns the value of the default button property from the underlyingJRootPane
.long
Returns the amount of time that must elapse before the frame automatically enters an idle state.final boolean
Returns the value for the key preview.Return the extended root pane.Returns the start position for this frame.Returns the value of the status bar property from the underlyingJXRootPane
.Returns the value of the tool bar property from the underlyingJXRootPane
.Returns the current wait pane for this frame.boolean
isIdle()
boolean
Returns the state of the wait cursor visibility.boolean
Determines if the frame is in a wait state or not.boolean
Returns the current visibility of the wait glass pane.void
setCancelButton
(JButton button) Sets the cancel button property on the underlyingJXRootPane
.void
void
setDefaultButton
(JButton button) Sets the default button property on the underlyingJRootPane
.void
setIdle
(boolean idle) Sets the frame into an idle state or restores the frame from an idle state.void
setIdleThreshold
(long threshold) Sets a threshold for user interaction before automatically placing the frame in an idle state.void
setKeyPreview
(boolean flag) If enabled theKeyListener
s will receive a preview of theKeyEvent
prior to normal viewing.void
setRootPane
(JRootPane root) Overridden to make this public.void
setStartPosition
(JXFrame.StartPosition position) Sets the start position for this frame.void
setStatusBar
(JXStatusBar statusBar) Sets the status bar property on the underlyingJXRootPane
.void
setToolBar
(JToolBar toolBar) Sets the tool bar property on the underlyingJXRootPane
.void
setVisible
(boolean visible) void
setWaitCursorVisible
(boolean flag) Switches the display cursor to or from the wait cursor.void
setWaiting
(boolean waiting) Sets the frame into a wait state or restores the frame from a wait state.void
Sets the component to use as a wait glass pane.void
setWaitPaneVisible
(boolean flag) Enabled or disabled the display of the normal or wait glass pane.Methods inherited from class javax.swing.JFrame
addImpl, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPaneCheckingEnabled, setTransferHandler, update
Methods inherited from class java.awt.Frame
addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setBackground, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setOpacity, setResizable, setShape, setState, setTitle, setUndecorated
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, show, toBack, toFront
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusDownCycle, validate, validateTree
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, 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, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setMixingCutoutShape, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
-
Constructor Details
-
JXFrame
public JXFrame()Creates aJXFrame
with no title and standard closing behavior. -
JXFrame
Creates aJXFrame
with the specified title and default closing behavior.- Parameters:
title
- the frame title
-
JXFrame
Creates aJXFrame
in the specifiedGraphicsConfiguration
of a screen device, a blank title and default closing behaviour.- Parameters:
gc
- theGraphicsConfiguration
that is used to construct the newFrame
; ifgc
isnull
, the system defaultGraphicsConfiguration
is assumed- Throws:
IllegalArgumentException
- ifgc
is not from a screen device. This exception is always thrown when GraphicsEnvironment.isHeadless() returns true.
-
JXFrame
Creates aJXFrame
with the specified title, the specifiedGraphicsConfiguration
of a screen device and default closing behaviour.- Parameters:
title
- the title to be displayed in the frame's border. Anull
value is treated as an empty string, "".gc
- theGraphicsConfiguration
that is used to construct the newJFrame
with; ifgc
isnull
, the system defaultGraphicsConfiguration
is assumed- Throws:
IllegalArgumentException
- ifgc
is not from a screen device. This exception is always thrown when GraphicsEnvironment.isHeadless() returns true.
-
JXFrame
Creates aJXFrame
with the specified title and closing behavior.- Parameters:
title
- the frame titleexitOnClose
-true
to override the default (JFrame
) closing behavior and useEXIT_ON_CLOSE
instead;false
to use the default behavior
-
JXFrame
Creates aJXFrame
with the specified title, GraphicsConfiguration and closing behavior.- Parameters:
title
- the frame titlegc
- theGraphicsConfiguration
of the target screen device. Ifgc
isnull
, the system defaultGraphicsConfiguration
is assumed.exitOnClose
-true
to override the default (JFrame
) closing behavior and useEXIT_ON_CLOSE
instead;false
to use the default behavior- Throws:
IllegalArgumentException
- ifgc
is not from a screen device.
-
-
Method Details
-
setCancelButton
Sets the cancel button property on the underlyingJXRootPane
.- Parameters:
button
- theJButton
which is to be the cancel button- See Also:
-
getCancelButton
Returns the value of the cancel button property from the underlyingJXRootPane
.- Returns:
- the
JButton
which is the cancel button - See Also:
-
setDefaultButton
Sets the default button property on the underlyingJRootPane
.- Parameters:
button
- theJButton
which is to be the default button- See Also:
-
getDefaultButton
Returns the value of the default button property from the underlyingJRootPane
.- Returns:
- the
JButton
which is the default button - See Also:
-
setKeyPreview
public void setKeyPreview(boolean flag) If enabled theKeyListener
s will receive a preview of theKeyEvent
prior to normal viewing.- Parameters:
flag
-true
to enable previewing;false
otherwise- See Also:
-
getKeyPreview
public final boolean getKeyPreview()Returns the value for the key preview.- Returns:
- if
true
previewing is enabled; otherwise it is not - See Also:
-
setStartPosition
Sets the start position for this frame. Setting this value only has an effect is the frame has never been displayed.- Parameters:
position
- the position to display the frame at- See Also:
-
getStartPosition
Returns the start position for this frame.- Returns:
- the start position of the frame
- See Also:
-
setWaitCursorVisible
public void setWaitCursorVisible(boolean flag) Switches the display cursor to or from the wait cursor.- Parameters:
flag
-true
to enable the wait cursor;false
to enable the previous cursor- See Also:
-
isWaitCursorVisible
public boolean isWaitCursorVisible()Returns the state of the wait cursor visibility.- Returns:
true
if the current cursor is the wait cursor;false
otherwise
-
setCursor
-
setWaitPane
Sets the component to use as a wait glass pane. This component is not part of the display hierarchy unlessisWaitPaneVisible() == true
.- Parameters:
c
- the wait glass pane for this frame- See Also:
-
getWaitPane
Returns the current wait pane for this frame. This component may or may not be part of the display hierarchy.- Returns:
- the current wait pane
- See Also:
-
setWaitPaneVisible
public void setWaitPaneVisible(boolean flag) Enabled or disabled the display of the normal or wait glass pane. Iftrue
the wait pane is be displayed. Altering this property alters the display hierarchy.- Parameters:
flag
-true
to display the wait glass pane;false
to display the normal glass pane- See Also:
-
isWaitPaneVisible
public boolean isWaitPaneVisible()Returns the current visibility of the wait glass pane.- Returns:
true
if the wait glass pane is visible;false
otherwise
-
setWaiting
public void setWaiting(boolean waiting) Sets the frame into a wait state or restores the frame from a wait state.- Parameters:
waiting
-true
to place the frame in a wait state;false
otherwise- See Also:
-
isWaiting
public boolean isWaiting()Determines if the frame is in a wait state or not.- Returns:
true
if the frame is in the wait state;false
otherwise- See Also:
-
setVisible
public void setVisible(boolean visible) - Overrides:
setVisible
in classWindow
-
isIdle
public boolean isIdle() -
setIdle
public void setIdle(boolean idle) Sets the frame into an idle state or restores the frame from an idle state.- Parameters:
idle
-true
to place the frame in an idle state;false
otherwise- See Also:
-
setIdleThreshold
public void setIdleThreshold(long threshold) Sets a threshold for user interaction before automatically placing the frame in an idle state.- Parameters:
threshold
- the time (in milliseconds) to elapse before setting the frame idle- See Also:
-
getIdleThreshold
public long getIdleThreshold()Returns the amount of time that must elapse before the frame automatically enters an idle state.- Returns:
- the time in milliseconds
-
setStatusBar
Sets the status bar property on the underlyingJXRootPane
.- Parameters:
statusBar
- theJXStatusBar
which is to be the status bar- See Also:
-
getStatusBar
Returns the value of the status bar property from the underlyingJXRootPane
.- Returns:
- the
JXStatusBar
which is the current status bar - See Also:
-
setToolBar
Sets the tool bar property on the underlyingJXRootPane
.- Parameters:
toolBar
- theJToolBar
which is to be the tool bar- See Also:
-
getToolBar
Returns the value of the tool bar property from the underlyingJXRootPane
.- Returns:
- the
JToolBar
which is the current tool bar - See Also:
-
createRootPane
Overridden to create a JXRootPane.- Overrides:
createRootPane
in classJFrame
-
setRootPane
Overridden to make this public.- Overrides:
setRootPane
in classJFrame
-
getRootPaneExt
Return the extended root pane. If this frame doesn't contain an extended root pane the root pane should be accessed with getRootPane().- Returns:
- the extended root pane or null.
-