LayoutManager
, Serializable
A flow layout arranges components in a directional flow, much like lines of text in a paragraph. The flow direction is determined by the container's
componentOrientation
property and may be one of two values:
ComponentOrientation.LEFT_TO_RIGHT
ComponentOrientation.RIGHT_TO_LEFT
Flow layouts are typically used to arrange buttons in a panel. It arranges buttons horizontally until no more buttons fit on the same line. The line alignment is determined by the
align
property. The possible values are:
For example, the following picture shows an applet using the flow layout manager (its default layout manager) to position three buttons:
Here is the code for this applet:
import java.awt.*; import java.applet.Applet; public class myButtons extends Applet { Button button1, button2, button3; public void init() { button1 = new Button("Ok"); button2 = new Button("Open"); button3 = new Button("Close"); add(button1); add(button2); add(button3); } }
A flow layout lets each component assume its natural (preferred) size.
Fields
static final int
This value indicates that each row of components should be centered.
static final int
This value indicates that each row of components should be justified to the leading edge of the container's orientation, for example, to the left in left-to-right orientations.
static final int
This value indicates that each row of components should be left-justified.
static final int
This value indicates that each row of components should be right-justified.
static final int
This value indicates that each row of components should be justified to the trailing edge of the container's orientation, for example, to the right in left-to-right orientations.
Constructors
Constructs a new FlowLayout
with a centered alignment and a default 5-unit horizontal and vertical gap.
Constructs a new FlowLayout
with the specified alignment and a default 5-unit horizontal and vertical gap.
Creates a new flow layout manager with the indicated alignment and the indicated horizontal and vertical gaps.
void
Adds the specified component to the layout.
int
Gets the alignment for this layout.
boolean
Returns true if components are to be vertically aligned along their baseline.
int
Gets the horizontal gap between components and between the components and the borders of the Container
int
Gets the vertical gap between components and between the components and the borders of the Container
.
void
Returns the minimum dimensions needed to layout the visible components contained in the specified target container.
Returns the preferred dimensions for this layout given the visible components in the specified target container.
void
Removes the specified component from the layout.
void
Sets the alignment for this layout.
void
Sets whether or not components should be vertically aligned along their baseline.
void
Sets the horizontal gap between components and between the components and the borders of the Container
.
void
Sets the vertical gap between components and between the components and the borders of the Container
.
Returns a string representation of this FlowLayout
object and its values.
public static final int LEFT
This value indicates that each row of components should be left-justified.
public static final int CENTER
This value indicates that each row of components should be centered.
public static final int RIGHT
This value indicates that each row of components should be right-justified.
public static final int LEADING
This value indicates that each row of components should be justified to the leading edge of the container's orientation, for example, to the left in left-to-right orientations.
public static final int TRAILING
This value indicates that each row of components should be justified to the trailing edge of the container's orientation, for example, to the right in left-to-right orientations.
public FlowLayout()
Constructs a new FlowLayout
with a centered alignment and a default 5-unit horizontal and vertical gap.
public FlowLayout(int align)
Constructs a new FlowLayout
with the specified alignment and a default 5-unit horizontal and vertical gap. The value of the alignment argument must be one of FlowLayout.LEFT
, FlowLayout.RIGHT
, FlowLayout.CENTER
, FlowLayout.LEADING
, or FlowLayout.TRAILING
.
align
- the alignment value
public FlowLayout(int align, int hgap, int vgap)
The value of the alignment argument must be one of FlowLayout.LEFT
, FlowLayout.RIGHT
, FlowLayout.CENTER
, FlowLayout.LEADING
, or FlowLayout.TRAILING
.
align
- the alignment value
hgap
- the horizontal gap between components and between the components and the borders of the Container
vgap
- the vertical gap between components and between the components and the borders of the Container
public int getAlignment()
Gets the alignment for this layout. Possible values are FlowLayout.LEFT
, FlowLayout.RIGHT
, FlowLayout.CENTER
, FlowLayout.LEADING
, or FlowLayout.TRAILING
.
public void setAlignment(int align)
Sets the alignment for this layout. Possible values are
FlowLayout.LEFT
FlowLayout.RIGHT
FlowLayout.CENTER
FlowLayout.LEADING
FlowLayout.TRAILING
align
- one of the alignment values shown above
public int getHgap()
Gets the horizontal gap between components and between the components and the borders of the Container
Container
public void setHgap(int hgap)
Sets the horizontal gap between components and between the components and the borders of the Container
.
hgap
- the horizontal gap between components and between the components and the borders of the Container
public int getVgap()
Gets the vertical gap between components and between the components and the borders of the Container
.
Container
public void setVgap(int vgap)
Sets the vertical gap between components and between the components and the borders of the Container
.
vgap
- the vertical gap between components and between the components and the borders of the Container
public void setAlignOnBaseline(boolean alignOnBaseline)
Sets whether or not components should be vertically aligned along their baseline. Components that do not have a baseline will be centered. The default is false.
alignOnBaseline
- whether or not components should be vertically aligned on their baseline
public boolean getAlignOnBaseline()
Returns true if components are to be vertically aligned along their baseline. The default is false.
Adds the specified component to the layout. Not used by this class.
addLayoutComponent
in interface LayoutManager
name
- the name of the component
comp
- the component to be added
Removes the specified component from the layout. Not used by this class.
removeLayoutComponent
in interface LayoutManager
comp
- the component to remove
Returns the preferred dimensions for this layout given the visible components in the specified target container.
preferredLayoutSize
in interface LayoutManager
target
- the container that needs to be laid out
Returns the minimum dimensions needed to layout the visible components contained in the specified target container.
minimumLayoutSize
in interface LayoutManager
target
- the container that needs to be laid out
Lays out the container. This method lets each visible component take its preferred size by reshaping the components in the target container in order to satisfy the alignment of this FlowLayout
object.
layoutContainer
in interface LayoutManager
target
- the specified component being laid out
Returns a string representation of this FlowLayout
object and its values.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4