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 and Description |
|---|---|
static class |
LayoutStyle
ComponentPlacement is an enumeration of the possible ways two components can be placed relative to each other.
|
| Constructor and Description |
|---|
LayoutStyle()
Creates a new
LayoutStyle.
|
| Modifier and Type | Method and Description |
|---|---|
abstract int |
getContainerGap(JComponent
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
Returns the amount of space to use between two components.
|
static void |
setInstance(LayoutStyle
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(LayoutStylestyle)
LayoutStyle. Specifying
null results in using the
LayoutStyle from the current
LookAndFeel.
style - the
LayoutStyle, or
null
getInstance()
public static LayoutStylegetInstance()
LayoutStyle. If an instance has not been specified in
setInstance, this will return the
LayoutStyle from the current
LookAndFeel.
LayoutStyle
LookAndFeel.getLayoutStyle()
public abstract int getPreferredGap(JComponentcomponent1, 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 to
component2 - the
JComponent being placed
position - the position
component2 is being placed relative to
component1; one of
SwingConstants.NORTH,
SwingConstants.SOUTH,
SwingConstants.EAST or
SwingConstants.WEST
type - how the two components are being placed
parent - the parent of
component2; this may differ from the actual parent and it may be
null
NullPointerException - if
component1,
component2 or
type is
null
IllegalArgumentException - if
position is not one of
SwingConstants.NORTH,
SwingConstants.SOUTH,
SwingConstants.EAST or
SwingConstants.WEST
LookAndFeel.getLayoutStyle()
public abstract int getContainerGap(JComponentcomponent, int position, Container parent)
component - the
JComponent being positioned
position - the position
component is being placed relative to its parent; one of
SwingConstants.NORTH,
SwingConstants.SOUTH,
SwingConstants.EAST or
SwingConstants.WEST
parent - the parent of
component; this may differ from the actual parent and may be
null
IllegalArgumentException - if
position is not one of
SwingConstants.NORTH,
SwingConstants.SOUTH,
SwingConstants.EAST or
SwingConstants.WEST