FlowLayout (Java 2 Platform SE 5.0) (original) (raw)
java.awt
Class FlowLayout
java.lang.Object
java.awt.FlowLayout
All Implemented Interfaces:
public class FlowLayout
extends Object
implements 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 thealign
property. The possible values are:- LEFT
- RIGHT
- CENTER
- LEADING
- TRAILING
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.
Since:
JDK1.0
See Also:
ComponentOrientation, Serialized Form
Field Summary | |
---|---|
static int | CENTER This value indicates that each row of components should be centered. |
static 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. |
static int | LEFT This value indicates that each row of components should be left-justified. |
static int | RIGHT This value indicates that each row of components should be right-justified. |
static 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. |
Constructor Summary |
---|
FlowLayout() Constructs a new FlowLayout with a centered alignment and a default 5-unit horizontal and vertical gap. |
FlowLayout(int align) Constructs a new FlowLayout with the specified alignment and a default 5-unit horizontal and vertical gap. |
[FlowLayout](../../java/awt/FlowLayout.html#FlowLayout%28int, int, int%29)(int align, int hgap, int vgap) Creates a new flow layout manager with the indicated alignment and the indicated horizontal and vertical gaps. |
Method Summary | |
---|---|
void | [addLayoutComponent](../../java/awt/FlowLayout.html#addLayoutComponent%28java.lang.String, java.awt.Component%29)(String name,Component comp) Adds the specified component to the layout. |
int | getAlignment() Gets the alignment for this layout. |
int | getHgap() Gets the horizontal gap between components and between the components and the borders of the Container |
int | getVgap() Gets the vertical gap between components and between the components and the borders of theContainer. |
void | layoutContainer(Container target) Lays out the container. |
Dimension | minimumLayoutSize(Container target) Returns the minimum dimensions needed to layout the visible components contained in the specified target container. |
Dimension | preferredLayoutSize(Container target) Returns the preferred dimensions for this layout given the visible components in the specified target container. |
void | removeLayoutComponent(Component comp) Removes the specified component from the layout. |
void | setAlignment(int align) Sets the alignment for this layout. |
void | setHgap(int hgap) Sets the horizontal gap between components and between the components and the borders of theContainer. |
void | setVgap(int vgap) Sets the vertical gap between components and between the components and the borders of the Container. |
String | toString() Returns a string representation of this FlowLayout object and its values. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, [wait](../../java/lang/Object.html#wait%28long, int%29) |
Field Detail |
---|
LEFT
public static final int LEFT
This value indicates that each row of components should be left-justified.
See Also:
CENTER
public static final int CENTER
This value indicates that each row of components should be centered.
See Also:
RIGHT
public static final int RIGHT
This value indicates that each row of components should be right-justified.
See Also:
LEADING
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.
Since:
1.2 Package-private pending API change approval
See Also:
Component.getComponentOrientation(), ComponentOrientation, Constant Field Values
TRAILING
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.
Since:
1.2 Package-private pending API change approval
See Also:
Component.getComponentOrientation(), ComponentOrientation, Constant Field Values
Constructor Detail |
---|
FlowLayout
public FlowLayout()
Constructs a new FlowLayout
with a centered alignment and a default 5-unit horizontal and vertical gap.
FlowLayout
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 ofFlowLayout.LEFT
, FlowLayout.RIGHT
,FlowLayout.CENTER
, FlowLayout.LEADING
, or FlowLayout.TRAILING
.
Parameters:
align
- the alignment value
FlowLayout
public FlowLayout(int align, int hgap, int vgap)
Creates a new flow layout manager with the indicated alignment and the indicated horizontal and vertical gaps.
The value of the alignment argument must be one ofFlowLayout.LEFT
, FlowLayout.RIGHT
,FlowLayout.CENTER
, FlowLayout.LEADING
, or FlowLayout.TRAILING
.
Parameters:
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
Method Detail |
---|
getAlignment
public int getAlignment()
Gets the alignment for this layout. Possible values are FlowLayout.LEFT
,FlowLayout.RIGHT
, FlowLayout.CENTER
,FlowLayout.LEADING
, or FlowLayout.TRAILING
.
Returns:
the alignment value for this layout
Since:
JDK1.1
See Also:
setAlignment
public void setAlignment(int align)
Sets the alignment for this layout. Possible values are
FlowLayout.LEFT
FlowLayout.RIGHT
FlowLayout.CENTER
FlowLayout.LEADING
FlowLayout.TRAILING
Parameters:
align
- one of the alignment values shown above
Since:
JDK1.1
See Also:
getHgap
public int getHgap()
Gets the horizontal gap between components and between the components and the borders of the Container
Returns:
the horizontal gap between components and between the components and the borders of the Container
Since:
JDK1.1
See Also:
setHgap
public void setHgap(int hgap)
Sets the horizontal gap between components and between the components and the borders of theContainer
.
Parameters:
hgap
- the horizontal gap between components and between the components and the borders of the Container
Since:
JDK1.1
See Also:
getVgap
public int getVgap()
Gets the vertical gap between components and between the components and the borders of theContainer
.
Returns:
the vertical gap between components and between the components and the borders of the Container
Since:
JDK1.1
See Also:
setVgap
public void setVgap(int vgap)
Sets the vertical gap between components and between the components and the borders of the Container
.
Parameters:
vgap
- the vertical gap between components and between the components and the borders of the Container
Since:
JDK1.1
See Also:
addLayoutComponent
public void addLayoutComponent(String name, Component comp)
Adds the specified component to the layout. Not used by this class.
Specified by:
[addLayoutComponent](../../java/awt/LayoutManager.html#addLayoutComponent%28java.lang.String, java.awt.Component%29)
in interface [LayoutManager](../../java/awt/LayoutManager.html "interface in java.awt")
Parameters:
name
- the name of the component
comp
- the component to be added
removeLayoutComponent
public void removeLayoutComponent(Component comp)
Removes the specified component from the layout. Not used by this class.
Specified by:
[removeLayoutComponent](../../java/awt/LayoutManager.html#removeLayoutComponent%28java.awt.Component%29)
in interface [LayoutManager](../../java/awt/LayoutManager.html "interface in java.awt")
Parameters:
comp
- the component to remove
See Also:
preferredLayoutSize
public Dimension preferredLayoutSize(Container target)
Returns the preferred dimensions for this layout given the visible components in the specified target container.
Specified by:
[preferredLayoutSize](../../java/awt/LayoutManager.html#preferredLayoutSize%28java.awt.Container%29)
in interface [LayoutManager](../../java/awt/LayoutManager.html "interface in java.awt")
Parameters:
target
- the container that needs to be laid out
Returns:
the preferred dimensions to lay out the subcomponents of the specified container
See Also:
Container, minimumLayoutSize(java.awt.Container), Container.getPreferredSize()
minimumLayoutSize
public Dimension minimumLayoutSize(Container target)
Returns the minimum dimensions needed to layout the visible components contained in the specified target container.
Specified by:
[minimumLayoutSize](../../java/awt/LayoutManager.html#minimumLayoutSize%28java.awt.Container%29)
in interface [LayoutManager](../../java/awt/LayoutManager.html "interface in java.awt")
Parameters:
target
- the container that needs to be laid out
Returns:
the minimum dimensions to lay out the subcomponents of the specified container
See Also:
preferredLayoutSize(java.awt.Container), Container, Container.doLayout()
layoutContainer
public void layoutContainer(Container target)
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.
Specified by:
[layoutContainer](../../java/awt/LayoutManager.html#layoutContainer%28java.awt.Container%29)
in interface [LayoutManager](../../java/awt/LayoutManager.html "interface in java.awt")
Parameters:
target
- the specified component being laid out
See Also:
Container, Container.doLayout()
toString
public String toString()
Returns a string representation of this FlowLayout
object and its values.
Overrides:
[toString](../../java/lang/Object.html#toString%28%29)
in class [Object](../../java/lang/Object.html "class in java.lang")
Returns:
a string representation of this layout
Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 2004, 2010 Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.