Class LayoutStyle
- java.lang.Object
-
- javax.swing.LayoutStyle
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.
- Since:
- 1.6
Nested Class Summary
Modifier and Type | Class | Description |
---|---|---|
static class | LayoutStyle.ComponentPlacement |
|
Constructor Summary
Constructor | Description |
---|---|
LayoutStyle() | Creates a new |
Method Summary
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 |
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 |
Methods declared in class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Constructor Detail
LayoutStyle
public LayoutStyle()
Creates a new LayoutStyle
. You generally don't create a LayoutStyle
. Instead use the method getInstance
to obtain the current LayoutStyle
.
Method Detail
setInstance
public static void setInstance(LayoutStyle style)
Sets the shared instance of LayoutStyle
. Specifying null
results in using the LayoutStyle
from the current LookAndFeel
.
- Parameters:
-
style
- theLayoutStyle
, ornull
- See Also:
getInstance()
getInstance
public static LayoutStyle getInstance()
Returns the shared instance of LayoutStyle
. If an instance has not been specified in setInstance
, this will return the LayoutStyle
from the current LookAndFeel
.
- Returns:
- the shared instance of
LayoutStyle
- See Also:
LookAndFeel.getLayoutStyle()
getPreferredGap
public abstract int getPreferredGap(JComponent component1, JComponent component2, LayoutStyle.ComponentPlacement type, int position, Container parent)
Returns the amount of space to use between two components. The return value indicates the distance to place 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.
- Parameters:
-
component1
- theJComponent
component2
is being placed relative to -
component2
- theJComponent
being placed -
position
- the positioncomponent2
is being placed relative tocomponent1
; one ofSwingConstants.NORTH
,SwingConstants.SOUTH
,SwingConstants.EAST
orSwingConstants.WEST
-
type
- how the two components are being placed -
parent
- the parent ofcomponent2
; this may differ from the actual parent and it may benull
- Returns:
- the amount of space to place between the two components
- Throws:
-
NullPointerException
- ifcomponent1
,component2
ortype
isnull
-
IllegalArgumentException
- ifposition
is not one ofSwingConstants.NORTH
,SwingConstants.SOUTH
,SwingConstants.EAST
orSwingConstants.WEST
- Since:
- 1.6
- See Also:
LookAndFeel.getLayoutStyle()
getContainerGap
public 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.
- Parameters:
-
component
- theJComponent
being positioned -
position
- the positioncomponent
is being placed relative to its parent; one ofSwingConstants.NORTH
,SwingConstants.SOUTH
,SwingConstants.EAST
orSwingConstants.WEST
-
parent
- the parent ofcomponent
; this may differ from the actual parent and may benull
- Returns:
- the amount of space to place between the component and specified edge
- Throws:
-
IllegalArgumentException
- ifposition
is not one ofSwingConstants.NORTH
,SwingConstants.SOUTH
,SwingConstants.EAST
orSwingConstants.WEST