Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Swing 1.1
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## javax.swing
Class Box

    java.lang.Object
      |
      +--java.awt.Component
            |
            +--java.awt.Container
                  |
                  +--javax.swing.Box

public class Box
extends java.awt.Container
implements Accessible

A lightweight container that uses a BoxLayout object as its layout manager. Box provides several class methods that are useful for containers using BoxLayout -- even non-Box containers.

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`.

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. A future release of Swing will provide support for long term persistence.

See Also:
  `BoxLayout`, Serialized Form

Inner Class Summary
`protected class` | `Box.AccessibleBox`
`static class` | `Box.Filler` An implementation of a lightweight component that participates in layout but has no view.

Field Summary
`protected AccessibleContext` | `accessibleContext` The currently set AccessibleContext object.

Fields inherited from class java.awt.Component
`BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT`

Constructor Summary
`Box(int axis)` Creates a `Box` that displays its components along the the specified axis.

Method Summary
`static java.awt.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 `Box` that displays its components from left to right.
`static java.awt.Component` | `createHorizontalGlue()` Creates a horizontal glue component.
`static java.awt.Component` | `createHorizontalStrut(int width)` Creates an invisible, fixed-width component.
`static java.awt.Component` | `createRigidArea(java.awt.Dimension d)` Creates an invisible component that's always the specified size.
`static Box` | `createVerticalBox()` Creates a `Box` that displays its components from top to bottom.
`static java.awt.Component` | `createVerticalGlue()` Creates a vertical glue component.
`static java.awt.Component` | `createVerticalStrut(int height)` Creates an invisible, fixed-height component.
`AccessibleContext` | `getAccessibleContext()` Get the AccessibleContext associated with this JComponent.
`void` | `setLayout(java.awt.LayoutManager l)` Throws an AWTError, since a Box can use only a BoxLayout.

Methods inherited from class java.awt.Container
`add, add, add, add, add, addContainerListener, addImpl, addNotify, countComponents, deliverEvent, doLayout, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getInsets, getLayout, getMaximumSize, getMinimumSize, getPreferredSize, insets, invalidate, isAncestorOf, layout, list, list, locate, minimumSize, paint, paintComponents, paramString, preferredSize, print, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, removeNotify, update, validate, validateTree`

Methods inherited from class java.awt.Component
`action, add, addComponentListener, addFocusListener, addKeyListener, addMouseListener, addMouseMotionListener, bounds, checkImage, checkImage, contains, contains, createImage, createImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, getBackground, getBounds, getColorModel, getCursor, getFont, getFontMetrics, getForeground, getGraphics, getLocale, getLocation, getLocationOnScreen, getName, getParent, getPeer, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hide, imageUpdate, inside, isEnabled, isFocusTraversable, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, remove, removeComponentListener, removeFocusListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, repaint, repaint, repaint, repaint, requestFocus, reshape, resize, resize, setBackground, setBounds, setBounds, setCursor, setEnabled, setFont, setForeground, setLocale, setLocation, setLocation, setName, setSize, setSize, setVisible, show, show, size, toString, transferFocus`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### accessibleContext

    protected AccessibleContext accessibleContext

  The currently set AccessibleContext object.

Constructor Detail

### Box

    public Box(int axis)

  Creates a `Box` that displays its components along the the specified axis.
  Parameters:
    `axis` - can be either `BoxLayout.X_AXIS` (to display components from left to right) or `BoxLayout.Y_AXIS` (to display them from top to bottom)
  See Also:
    `createHorizontalBox()`, `createVerticalBox()`

Method Detail

### createHorizontalBox

    public static Box createHorizontalBox()

  Creates a `Box` that displays its components from left to right.
  Returns:
    the box

### createVerticalBox

    public static Box createVerticalBox()

  Creates a `Box` that displays its components from top to bottom.
  Returns:
    the box

### createRigidArea

    public static java.awt.Component createRigidArea(java.awt.Dimension d)

  Creates an invisible component that's always the specified size.
  Parameters:
    `d` - the dimensions of the invisible component
  Returns:
    the component
  See Also:
    `createGlue()`, `createHorizontalStrut(int)`, `createVerticalStrut(int)`

### createHorizontalStrut

    public static java.awt.Component createHorizontalStrut(int width)

  Creates an invisible, fixed-width component. In a horizontal box, you typically use this method to force a certain amount of space between two components. In a vertical box, you might use this method to force the box to be at least the specified width. The invisible component has no height unless excess space is available, in which case it takes its share of available space, just like any other component that has no maximum height.
  Parameters:
    `width` - the width of the invisible component, in pixels >= 0
  Returns:
    the component
  See Also:
    `createVerticalStrut(int)`, `createGlue()`, `createRigidArea(java.awt.Dimension)`

### createVerticalStrut

    public static java.awt.Component createVerticalStrut(int height)

  Creates an invisible, fixed-height component. In a vertical box, you typically use this method to force a certain amount of space between two components. In a horizontal box, you might use this method to force the box to be at least the specified height. The invisible component has no width unless excess space is available, in which case it takes its share of available space, just like any other component that has no maximum width.
  Parameters:
    `height` - the height of the invisible component, in pixels >= 0
  Returns:
    the component
  See Also:
    `createHorizontalStrut(int)`, `createGlue()`, `createRigidArea(java.awt.Dimension)`

### createGlue

    public static java.awt.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). You can think of the glue component as being a gooey substance that expands as much as necessary to fill the space between its neighboring components.

  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.

  Returns:
    the component

### createHorizontalGlue

    public static java.awt.Component createHorizontalGlue()

  Creates a horizontal glue component.
  Returns:
    the component

### createVerticalGlue

    public static java.awt.Component createVerticalGlue()

  Creates a vertical glue component.
  Returns:
    the component

### setLayout

    public void setLayout(java.awt.LayoutManager l)

  Throws an AWTError, since a Box can use only a BoxLayout.
  Parameters:
    `l` - the layout manager to use
  Overrides:
    setLayout in class java.awt.Container

### getAccessibleContext

    public AccessibleContext getAccessibleContext()

  Get the AccessibleContext associated with this JComponent. Creates a new context if necessary.
  Specified by:
    getAccessibleContext in interface Accessible
  Returns:
    the AccessibleContext of this JComponent

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Swing 1.1
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Submit a bug or feature
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-1998 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.