public abstract class LayoutStyle extends Object
LayoutStyle provides information about how to position
 components.  This class is primarily useful for visual tools and
 layout managers.  Most developers will not need to use this class.
 
 You typically don't set or create a
 LayoutStyle.  Instead use the static method
 getInstance to obtain the current instance.
| Modifier and Type | Class | Description | 
|---|---|---|
| static class  | LayoutStyle.ComponentPlacement | ComponentPlacementis an enumeration of the
 possible ways two components can be placed relative to each
 other. | 
| Constructor | Description | 
|---|---|
| LayoutStyle() | Creates a new  LayoutStyle. | 
| Modifier and Type | Method | Description | 
|---|---|---|
| abstract int | getContainerGap(JComponent component,
               int position,
               Container parent) | Returns the amount of space to place between the component and specified
 edge of its parent. | 
| static LayoutStyle | getInstance() | Returns the shared instance of  LayoutStyle. | 
| abstract int | getPreferredGap(JComponent component1,
               JComponent component2,
               LayoutStyle.ComponentPlacement type,
               int position,
               Container parent) | Returns the amount of space to use between two components. | 
| static void | setInstance(LayoutStyle style) | Sets the shared instance of  LayoutStyle. | 
public LayoutStyle()
LayoutStyle.  You generally don't
 create a LayoutStyle.  Instead use the method
 getInstance to obtain the current
 LayoutStyle.public static void setInstance(LayoutStyle style)
LayoutStyle.  Specifying
 null results in using the LayoutStyle from
 the current LookAndFeel.style - the LayoutStyle, or nullgetInstance()public static LayoutStyle getInstance()
LayoutStyle.  If an instance
 has not been specified in setInstance, this will return
 the LayoutStyle from the current LookAndFeel.LayoutStyleLookAndFeel.getLayoutStyle()public abstract int getPreferredGap(JComponent component1, JComponent component2, LayoutStyle.ComponentPlacement type, int position, Container parent)
component2 relative to component1.
 For example, the following returns the amount of space to place
 between component2 and component1
 when component2 is placed vertically above
 component1:
 
   int gap = getPreferredGap(component1, component2,
                             ComponentPlacement.RELATED,
                             SwingConstants.NORTH, parent);
 
 The type parameter indicates the relation between
 the two components.  If the two components will be contained in
 the same parent and are showing similar logically related
 items, use RELATED.  If the two components will be
 contained in the same parent but show logically unrelated items
 use UNRELATED.  Some look and feels may not
 distinguish between the RELATED and
 UNRELATED types.
 
 The return value is not intended to take into account the
 current size and position of component2 or
 component1.  The return value may take into
 consideration various properties of the components.  For
 example, the space may vary based on font size, or the preferred
 size of the component.
component1 - the JComponent
               component2 is being placed relative tocomponent2 - the JComponent being placedposition - the position component2 is being placed
        relative to component1; one of
        SwingConstants.NORTH,
        SwingConstants.SOUTH,
        SwingConstants.EAST or
        SwingConstants.WESTtype - how the two components are being placedparent - the parent of component2; this may differ
        from the actual parent and it may be nullNullPointerException - if component1,
         component2 or type is
         nullIllegalArgumentException - if position is not
         one of SwingConstants.NORTH,
         SwingConstants.SOUTH,
         SwingConstants.EAST or
         SwingConstants.WESTLookAndFeel.getLayoutStyle()public abstract int getContainerGap(JComponent component, int position, Container parent)
component - the JComponent being positionedposition - the position component is being placed
        relative to its parent; one of
        SwingConstants.NORTH,
        SwingConstants.SOUTH,
        SwingConstants.EAST or
        SwingConstants.WESTparent - the parent of component; this may differ
        from the actual parent and may be nullIllegalArgumentException - if position is not
         one of SwingConstants.NORTH,
         SwingConstants.SOUTH,
         SwingConstants.EAST or
         SwingConstants.WEST 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, 2025, Oracle and/or its affiliates.  All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.