public class Box extends JComponent implements Accessible
 The Box class can create several kinds
 of invisible components
 that affect layout:
 glue, struts, and rigid areas.
 If all the components your Box contains
 have a fixed size,
 you might want to use a glue component
 (returned by createGlue)
 to control the components' positions.
 If you need a fixed amount of space between two components,
 try using a strut
 (createHorizontalStrut or createVerticalStrut).
 If you need an invisible component
 that always takes up the same amount of space,
 get it by invoking createRigidArea.
 
 If you are implementing a BoxLayout you
 can find further information and examples in
 How to Use BoxLayout,
 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 JavaBeans™
 has been added to the java.beans package.
 Please see XMLEncoder.
BoxLayout| Modifier and Type | Class and Description | 
|---|---|
| protected class  | Box.AccessibleBoxThis class implements accessibility support for the
  Boxclass. | 
| static class  | Box.FillerAn implementation of a lightweight component that participates in
 layout but has no view. | 
JComponent.AccessibleJComponentContainer.AccessibleAWTContainerComponent.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategylistenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOWaccessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH| Constructor and Description | 
|---|
| Box(int axis)Creates a  Boxthat displays its components
 along the the specified axis. | 
| Modifier and Type | Method and Description | 
|---|---|
| static Component | createGlue()Creates an invisible "glue" component
 that can be useful in a Box
 whose visible components have a maximum width
 (for a horizontal box)
 or height (for a vertical box). | 
| static Box | createHorizontalBox()Creates a  Boxthat displays its components
 from left to right. | 
| static Component | createHorizontalGlue()Creates a horizontal glue component. | 
| static Component | createHorizontalStrut(int width)Creates an invisible, fixed-width component. | 
| static Component | createRigidArea(Dimension d)Creates an invisible component that's always the specified size. | 
| static Box | createVerticalBox()Creates a  Boxthat displays its components
 from top to bottom. | 
| static Component | createVerticalGlue()Creates a vertical glue component. | 
| static Component | createVerticalStrut(int height)Creates an invisible, fixed-height component. | 
| AccessibleContext | getAccessibleContext()Gets the AccessibleContext associated with this Box. | 
| protected void | paintComponent(Graphics g)Paints this  Box. | 
| void | setLayout(LayoutManager l)Throws an AWTError, since a Box can use only a BoxLayout. | 
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, 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, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, paramString, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update, updateUIadd, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, transferFocusDownCycle, validate, validateTreeaction, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, 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, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCyclepublic Box(int axis)
Box that displays its components
 along the the specified axis.axis - can be BoxLayout.X_AXIS,
              BoxLayout.Y_AXIS,
              BoxLayout.LINE_AXIS or
              BoxLayout.PAGE_AXIS.AWTError - if the axis is invalidcreateHorizontalBox(), 
createVerticalBox()public static Box createHorizontalBox()
Box that displays its components
 from left to right. If you want a Box that
 respects the component orientation you should create the
 Box using the constructor and pass in
 BoxLayout.LINE_AXIS, eg:
 Box lineBox = new Box(BoxLayout.LINE_AXIS);
public static Box createVerticalBox()
Box that displays its components
 from top to bottom. If you want a Box that
 respects the component orientation you should create the
 Box using the constructor and pass in
 BoxLayout.PAGE_AXIS, eg:
 Box lineBox = new Box(BoxLayout.PAGE_AXIS);
public static Component createRigidArea(Dimension d)
d - the dimensions of the invisible componentcreateGlue(), 
createHorizontalStrut(int), 
createVerticalStrut(int)public static Component createHorizontalStrut(int width)
width - the width of the invisible component, in pixels >= 0createVerticalStrut(int), 
createGlue(), 
createRigidArea(java.awt.Dimension)public static Component createVerticalStrut(int height)
height - the height of the invisible component, in pixels >= 0createHorizontalStrut(int), 
createGlue(), 
createRigidArea(java.awt.Dimension)public static Component createGlue()
For example, suppose you have a horizontal box that contains two fixed-size components. If the box gets extra space, the fixed-size components won't become larger, so where does the extra space go? Without glue, the extra space goes to the right of the second component. If you put glue between the fixed-size components, then the extra space goes there. If you put glue before the first fixed-size component, the extra space goes there, and the fixed-size components are shoved against the right edge of the box. If you put glue before the first fixed-size component and after the second fixed-size component, the fixed-size components are centered in the box.
 To use glue,
 call Box.createGlue
 and add the returned component to a container.
 The glue component has no minimum or preferred size,
 so it takes no space unless excess space is available.
 If excess space is available,
 then the glue component takes its share of available
 horizontal or vertical space,
 just like any other component that has no maximum width or height.
public static Component createHorizontalGlue()
public static Component createVerticalGlue()
public void setLayout(LayoutManager l)
setLayout in class Containerl - the layout manager to useContainer.doLayout(), 
Container.getLayout(), 
Container.invalidate()protected void paintComponent(Graphics g)
Box.  If this Box has a UI this
 method invokes super's implementation, otherwise if this
 Box is opaque the Graphics is filled
 using the background.paintComponent in class JComponentg - the Graphics to paint toNullPointerException - if g is nullJComponent.paint(java.awt.Graphics), 
ComponentUIpublic AccessibleContext getAccessibleContext()
getAccessibleContext in interface AccessiblegetAccessibleContext in class Component Submit a bug or feature 
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
 Copyright © 1993, 2015, Oracle and/or its affiliates.  All rights reserved.