# Uses of Interface
java.awt.LayoutManager

Packages that use LayoutManager
Package
Description
java.awt
Contains all of the classes for creating user interfaces and for painting graphics and images.
javax.swing
Provides a set of "lightweight" (all-Java language) components that, to the maximum degree possible, work the same on all platforms.
javax.swing.plaf.basic
Provides user interface objects built according to the Basic look and feel.
javax.swing.plaf.metal
Provides user interface objects built according to the Java look and feel (once codenamed Metal), which is the default look and feel.
javax.swing.plaf.synth
Synth is a skinnable look and feel in which all painting is delegated.

## Uses of LayoutManager in java.awt

Subinterfaces of LayoutManager in java.awt
Modifier and Type
Interface
Description
`interface`
`LayoutManager2`
Defines an interface for classes that know how to layout Containers based on a layout constraints object.
Classes in java.awt that implement LayoutManager
Modifier and Type
Class
Description
`class`
`BorderLayout`
A border layout lays out a container, arranging and resizing its components to fit in five regions: north, south, east, west, and center.
`class`
`CardLayout`
A `CardLayout` object is a layout manager for a container.
`class`
`FlowLayout`
A flow layout arranges components in a directional flow, much like lines of text in a paragraph.
`class`
`GridBagLayout`
The `GridBagLayout` class is a flexible layout manager that aligns components vertically, horizontally or along their baseline without requiring that the components be of the same size.
`class`
`GridLayout`
The `GridLayout` class is a layout manager that lays out a container's components in a rectangular grid.
Methods in java.awt that return LayoutManager
Modifier and Type
Method
Description
`LayoutManager`
Container.`getLayout()`
Gets the layout manager for this container.
Methods in java.awt with parameters of type LayoutManager
Modifier and Type
Method
Description
`void`
Container.`setLayout(LayoutManager mgr)`
Sets the layout manager for this container.
`final void`
ScrollPane.`setLayout(LayoutManager mgr)`
Sets the layout manager for this container.
Constructors in java.awt with parameters of type LayoutManager
Modifier
Constructor
Description
``
`Panel(LayoutManager layout)`
Creates a new panel with the specified layout manager.

## Uses of LayoutManager in javax.swing

Classes in javax.swing that implement LayoutManager
Modifier and Type
Class
Description
`class`
`BoxLayout`
A layout manager that allows multiple components to be laid out either vertically or horizontally.
`class`
`GroupLayout`
`GroupLayout` is a `LayoutManager` that hierarchically groups components in order to position them in a `Container`.
`protected class`
`JRootPane.RootLayout`
A custom layout manager that is responsible for the layout of layeredPane, glassPane, and menuBar.
`static class`
`JSpinner.DateEditor`
An editor for a `JSpinner` whose model is a `SpinnerDateModel`.
`static class`
`JSpinner.DefaultEditor`
A simple base class for more specialized editors that displays a read-only view of the model's current value with a `JFormattedTextField`.
`static class`
`JSpinner.ListEditor`
An editor for a `JSpinner` whose model is a `SpinnerListModel`.
`static class`
`JSpinner.NumberEditor`
An editor for a `JSpinner` whose model is a `SpinnerNumberModel`.
`class`
`OverlayLayout`
A layout manager to arrange components over the top of each other.
`class`
`ScrollPaneLayout`
The layout manager used by `JScrollPane`.
`static class`
`ScrollPaneLayout.UIResource`
The UI resource version of `ScrollPaneLayout`.
`class`
`SpringLayout`
A `SpringLayout` lays out the children of its associated container according to a set of constraints.
`class`
`ViewportLayout`
The default layout manager for `JViewport`.
Methods in javax.swing that return LayoutManager
Modifier and Type
Method
Description
`protected LayoutManager`
JViewport.`createLayoutManager()`
Subclassers can override this to install a different layout manager (or `null`) in the constructor.
`protected LayoutManager`
JRootPane.`createRootLayout()`
Called by the constructor methods to create the default `layoutManager`.
Methods in javax.swing with parameters of type LayoutManager
Modifier and Type
Method
Description
`void`
AbstractButton.`setLayout(LayoutManager mgr)`
Sets the layout manager for this container, refer to `Container.setLayout(LayoutManager)` for a complete description of this method.
`void`
Box.`setLayout(LayoutManager l)`
Throws an AWTError, since a Box can use only a BoxLayout.
`void`
JApplet.`setLayout(LayoutManager manager)`
Deprecated, for removal: This API element is subject to removal in a future version.
Sets the `LayoutManager`.
`void`
JDialog.`setLayout(LayoutManager manager)`
Sets the `LayoutManager`.
`void`
JFrame.`setLayout(LayoutManager manager)`
Sets the `LayoutManager`.
`void`
JInternalFrame.`setLayout(LayoutManager manager)`
Ensures that, by default, the layout of this component cannot be set.
`void`
JLayer.`setLayout(LayoutManager mgr)`
Sets the layout manager for this container.
`void`
JScrollPane.`setLayout(LayoutManager layout)`
Sets the layout manager for this `JScrollPane`.
`void`
JWindow.`setLayout(LayoutManager manager)`
Sets the `LayoutManager`.
Constructors in javax.swing with parameters of type LayoutManager
Modifier
Constructor
Description
``
`JPanel(LayoutManager layout)`
Create a new buffered JPanel with the specified layout manager
``
`JPanel(LayoutManager layout, boolean isDoubleBuffered)`
Creates a new JPanel with the specified layout manager and buffering strategy.

## Uses of LayoutManager in javax.swing.plaf.basic

Classes in javax.swing.plaf.basic that implement LayoutManager
Modifier and Type
Class
Description
`class`
`BasicComboBoxUI.ComboBoxLayoutManager`
This layout manager handles the 'standard' layout of combo boxes.
`class`
`BasicInternalFrameTitlePane.TitlePaneLayout`
This class should be treated as a "protected" inner class.
`class`
`BasicInternalFrameUI.InternalFrameLayout`
Internal frame layout.
`static class`
`BasicOptionPaneUI.ButtonAreaLayout`
`ButtonAreaLayout` behaves in a similar manner to `FlowLayout`.
`class`
`BasicScrollBarUI`
Implementation of ScrollBarUI for the Basic Look and Feel
`protected class`
`BasicSplitPaneDivider.DividerLayout`
Used to layout a `BasicSplitPaneDivider`.
`class`
`BasicSplitPaneUI.BasicHorizontalLayoutManager`
LayoutManager for JSplitPanes that have an orientation of HORIZONTAL_SPLIT.
`class`
`BasicSplitPaneUI.BasicVerticalLayoutManager`
LayoutManager used for JSplitPanes with an orientation of VERTICAL_SPLIT.
`class`
`BasicTabbedPaneUI.TabbedPaneLayout`
This class should be treated as a "protected" inner class.
`class`
`DefaultMenuLayout`
The default layout manager for Popup menus and menubars.
Fields in javax.swing.plaf.basic declared as LayoutManager
Modifier and Type
Field
Description
`protected LayoutManager`
BasicInternalFrameUI.`internalFrameLayout`
Internal frame layout
Methods in javax.swing.plaf.basic that return LayoutManager
Modifier and Type
Method
Description
`protected LayoutManager`
BasicInternalFrameTitlePane.`createLayout()`
Returns a layout manager.
`protected LayoutManager`
BasicSpinnerUI.`createLayout()`
Creates a `LayoutManager` that manages the `editor`, `nextButton`, and `previousButton` children of the JSpinner.
`protected LayoutManager`
BasicComboBoxUI.`createLayoutManager()`
Creates a layout manager for managing the components which make up the combo box.
`protected LayoutManager`
BasicInternalFrameUI.`createLayoutManager()`
Creates the layout manager.
`protected LayoutManager`
BasicOptionPaneUI.`createLayoutManager()`
Returns a layout manager.
`protected LayoutManager`
BasicTabbedPaneUI.`createLayoutManager()`
Invoked by `installUI` to create a layout manager object to manage the `JTabbedPane`.

## Uses of LayoutManager in javax.swing.plaf.metal

Classes in javax.swing.plaf.metal that implement LayoutManager
Modifier and Type
Class
Description
`class`
`MetalComboBoxUI.MetalComboBoxLayoutManager`
This class should be treated as a "protected" inner class.
`class`
`MetalScrollBarUI`
Implementation of ScrollBarUI for the Metal Look and Feel
`class`
`MetalTabbedPaneUI.TabbedPaneLayout`
This class should be treated as a "protected" inner class.

## Uses of LayoutManager in javax.swing.plaf.synth

Classes in javax.swing.plaf.synth that implement LayoutManager
Modifier and Type
Class
Description
`class`
`SynthScrollBarUI`
Provides the Synth L&F UI delegate for `JScrollBar`.
Methods in javax.swing.plaf.synth that return LayoutManager
Modifier and Type
Method
Description
`protected LayoutManager`
SynthToolBarUI.`createLayout()`
Creates a `LayoutManager` to use with the toolbar.
`protected LayoutManager`
SynthTabbedPaneUI.`createLayoutManager()`
Invoked by `installUI` to create a layout manager object to manage the `JTabbedPane`.