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.AccessibleJFrameNested classes/interfaces inherited from class java.awt.Frame
Frame.AccessibleAWTFrameNested classes/interfaces inherited from class java.awt.Window
Window.AccessibleAWTWindow, Window.TypeNested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainerNested 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, rootPaneCheckingEnabledFields 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_CURSORFields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTFields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTHFields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE -
Constructor Summary
ConstructorsConstructorDescriptionJXFrame()Creates aJXFramewith no title and standard closing behavior.Creates aJXFramein the specifiedGraphicsConfigurationof a screen device, a blank title and default closing behaviour.Creates aJXFramewith the specified title and default closing behavior.Creates aJXFramewith the specified title and closing behavior.JXFrame(String title, GraphicsConfiguration gc) Creates aJXFramewith the specified title, the specifiedGraphicsConfigurationof a screen device and default closing behaviour.JXFrame(String title, GraphicsConfiguration gc, boolean exitOnClose) Creates aJXFramewith the specified title, GraphicsConfiguration and closing behavior. -
Method Summary
Modifier and TypeMethodDescriptionprotected JRootPaneOverridden 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.longReturns the amount of time that must elapse before the frame automatically enters an idle state.final booleanReturns 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.booleanisIdle()booleanReturns the state of the wait cursor visibility.booleanDetermines if the frame is in a wait state or not.booleanReturns the current visibility of the wait glass pane.voidsetCancelButton(JButton button) Sets the cancel button property on the underlyingJXRootPane.voidvoidsetDefaultButton(JButton button) Sets the default button property on the underlyingJRootPane.voidsetIdle(boolean idle) Sets the frame into an idle state or restores the frame from an idle state.voidsetIdleThreshold(long threshold) Sets a threshold for user interaction before automatically placing the frame in an idle state.voidsetKeyPreview(boolean flag) If enabled theKeyListeners will receive a preview of theKeyEventprior to normal viewing.voidsetRootPane(JRootPane root) Overridden to make this public.voidsetStartPosition(JXFrame.StartPosition position) Sets the start position for this frame.voidsetStatusBar(JXStatusBar statusBar) Sets the status bar property on the underlyingJXRootPane.voidsetToolBar(JToolBar toolBar) Sets the tool bar property on the underlyingJXRootPane.voidsetVisible(boolean visible) voidsetWaitCursorVisible(boolean flag) Switches the display cursor to or from the wait cursor.voidsetWaiting(boolean waiting) Sets the frame into a wait state or restores the frame from a wait state.voidSets the component to use as a wait glass pane.voidsetWaitPaneVisible(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, updateMethods 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, setUndecoratedMethods 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, toFrontMethods 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, validateTreeMethods 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, transferFocusUpCycleMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface java.awt.MenuContainer
getFont, postEvent
-
Constructor Details
-
JXFrame
public JXFrame()Creates aJXFramewith no title and standard closing behavior. -
JXFrame
Creates aJXFramewith the specified title and default closing behavior.- Parameters:
title- the frame title
-
JXFrame
Creates aJXFramein the specifiedGraphicsConfigurationof a screen device, a blank title and default closing behaviour.- Parameters:
gc- theGraphicsConfigurationthat is used to construct the newFrame; ifgcisnull, the system defaultGraphicsConfigurationis assumed- Throws:
IllegalArgumentException- ifgcis not from a screen device. This exception is always thrown when GraphicsEnvironment.isHeadless() returns true.
-
JXFrame
Creates aJXFramewith the specified title, the specifiedGraphicsConfigurationof a screen device and default closing behaviour.- Parameters:
title- the title to be displayed in the frame's border. Anullvalue is treated as an empty string, "".gc- theGraphicsConfigurationthat is used to construct the newJFramewith; ifgcisnull, the system defaultGraphicsConfigurationis assumed- Throws:
IllegalArgumentException- ifgcis not from a screen device. This exception is always thrown when GraphicsEnvironment.isHeadless() returns true.
-
JXFrame
Creates aJXFramewith the specified title and closing behavior.- Parameters:
title- the frame titleexitOnClose-trueto override the default (JFrame) closing behavior and useEXIT_ON_CLOSEinstead;falseto use the default behavior
-
JXFrame
Creates aJXFramewith the specified title, GraphicsConfiguration and closing behavior.- Parameters:
title- the frame titlegc- theGraphicsConfigurationof the target screen device. Ifgcisnull, the system defaultGraphicsConfigurationis assumed.exitOnClose-trueto override the default (JFrame) closing behavior and useEXIT_ON_CLOSEinstead;falseto use the default behavior- Throws:
IllegalArgumentException- ifgcis not from a screen device.
-
-
Method Details
-
setCancelButton
Sets the cancel button property on the underlyingJXRootPane.- Parameters:
button- theJButtonwhich is to be the cancel button- See Also:
-
getCancelButton
Returns the value of the cancel button property from the underlyingJXRootPane.- Returns:
- the
JButtonwhich is the cancel button - See Also:
-
setDefaultButton
Sets the default button property on the underlyingJRootPane.- Parameters:
button- theJButtonwhich is to be the default button- See Also:
-
getDefaultButton
Returns the value of the default button property from the underlyingJRootPane.- Returns:
- the
JButtonwhich is the default button - See Also:
-
setKeyPreview
public void setKeyPreview(boolean flag) If enabled theKeyListeners will receive a preview of theKeyEventprior to normal viewing.- Parameters:
flag-trueto enable previewing;falseotherwise- See Also:
-
getKeyPreview
public final boolean getKeyPreview()Returns the value for the key preview.- Returns:
- if
truepreviewing 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-trueto enable the wait cursor;falseto enable the previous cursor- See Also:
-
isWaitCursorVisible
public boolean isWaitCursorVisible()Returns the state of the wait cursor visibility.- Returns:
trueif the current cursor is the wait cursor;falseotherwise
-
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. Iftruethe wait pane is be displayed. Altering this property alters the display hierarchy.- Parameters:
flag-trueto display the wait glass pane;falseto display the normal glass pane- See Also:
-
isWaitPaneVisible
public boolean isWaitPaneVisible()Returns the current visibility of the wait glass pane.- Returns:
trueif the wait glass pane is visible;falseotherwise
-
setWaiting
public void setWaiting(boolean waiting) Sets the frame into a wait state or restores the frame from a wait state.- Parameters:
waiting-trueto place the frame in a wait state;falseotherwise- See Also:
-
isWaiting
public boolean isWaiting()Determines if the frame is in a wait state or not.- Returns:
trueif the frame is in the wait state;falseotherwise- See Also:
-
setVisible
public void setVisible(boolean visible) - Overrides:
setVisiblein 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-trueto place the frame in an idle state;falseotherwise- 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- theJXStatusBarwhich is to be the status bar- See Also:
-
getStatusBar
Returns the value of the status bar property from the underlyingJXRootPane.- Returns:
- the
JXStatusBarwhich is the current status bar - See Also:
-
setToolBar
Sets the tool bar property on the underlyingJXRootPane.- Parameters:
toolBar- theJToolBarwhich is to be the tool bar- See Also:
-
getToolBar
Returns the value of the tool bar property from the underlyingJXRootPane.- Returns:
- the
JToolBarwhich is the current tool bar - See Also:
-
createRootPane
Overridden to create a JXRootPane.- Overrides:
createRootPanein classJFrame
-
setRootPane
Overridden to make this public.- Overrides:
setRootPanein 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.
-