public class LayoutStyle
- Object
- LayoutStyle
LayoutStyle is used to determine how much space to place between components
during layout. LayoutStyle can be obtained for two components, or for
a component relative to an edge of a parent container. The amount of
space can vary depending upon whether or not the components are
logically grouped together (RELATED).
This class is primarily useful for JREs prior to 1.6. In 1.6 API for this was added to Swing. When run on a JRE of 1.6 or greater this will call into the appropriate methods in Swing.
Fields
public static final int RELATED = 0 | Possible argument to getPreferredGap. |
public static final int UNRELATED = 1 | Possible argument to getPreferredGap. |
public static final int INDENT = 3 | Possible argument to getPreferredGap. |
Constructors
public LayoutStyle() |
Methods
public static LayoutStyle getSharedInstance() | Factory methods for obtaining the current LayoutStyle object appropriate for the current look and feel. |
public static void setSharedInstance(LayoutStyle layout) | Sets the LayoutStyle instance to use for this look and feel. |
public int getPreferredGap(Component component1, Component component2, int type, int position, Container parent) | Returns the amount of space to use between two components. |
public int getContainerGap(Component component, int position, Container parent) | Returns the amount of space to position a component inside its parent. |
Inherited methods
Field details
RELATED
public static final int RELATED = 0UNRELATED
public static final int UNRELATED = 1INDENT
public static final int INDENT = 3INDENT constant for this.
For example, to indent a check box relative to a label use this
constant to getPreferredGap.Constructor details
LayoutStyle
public LayoutStyle()Method details
getPreferredGap
public int getPreferredGap(Component component1, Component component2, int 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,
LayoutStyle.RELATED,
SwingConstants.NORTH, parent);
The type parameter indicates the type
of gap being requested. It can be one of the following values:
RELATED
If the two components will be contained in
the same parent and are showing similar logically related
items, use RELATED.
UNRELATED
If the two components will be
contained in the same parent but show logically unrelated items
use UNRELATED.
INDENT
Used to obtain the preferred distance to indent a component
relative to another. For example, if you want to horizontally
indent a JCheckBox relative to a JLabel use INDENT.
This is only useful for the horizontal axis.
It’s important to note that some look and feels may not distinguish
between RELATED and UNRELATED.
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
component1Component- the
JComponentcomponent2is being placed relative to component2Component- the
JComponentbeing placed typeint- how the two components are being placed
positionint- the position
component2is being placed relative tocomponent1; one ofSwingConstants.NORTH,SwingConstants.SOUTH,SwingConstants.EASTorSwingConstants.WEST parentContainer- the parent of
component2; this may differ from the actual parent and may be null
Returns
Throws
IllegalArgumentException- if
positionis not one ofSwingConstants.NORTH,SwingConstants.SOUTH,SwingConstants.EASTorSwingConstants.WEST;typenot one ofINDENT,RELATEDorUNRELATED; orcomponent1orcomponent2is null
getContainerGap
public int getContainerGap(Component component, int position, Container parent)Parameters
componentComponent- the
Componentbeing positioned positionint- the position
componentis being placed relative to its parent; one ofSwingConstants.NORTH,SwingConstants.SOUTH,SwingConstants.EASTorSwingConstants.WEST parentContainer- the parent of
component; this may differ from the actual parent and may be null
Returns
Throws
IllegalArgumentException- if
positionis not one ofSwingConstants.NORTH,SwingConstants.SOUTH,SwingConstants.EASTorSwingConstants.WEST; orcomponentis null