Contents | Package | Class | Tree | Deprecated | Index | Help Java 1.2 Beta 3
PREV | NEXT SHOW LISTS | HIDE LISTS

Class java.awt.FlowLayout

java.lang.Object
    |
    +----java.awt.FlowLayout

public class FlowLayout
extends Object
implements LayoutManager, Serializable
A flow layout arranges components in a left-to-right flow, much like lines of text in a paragraph. Flow layouts are typically used to arrange buttons in a panel. It will arrange buttons left to right until no more buttons fit on the same line. Each line is centered.

For example, the following picture shows an applet using the flow layout manager (its default layout manager) to position three buttons:

Graphic of Layout for 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

Field Summary
static int  CENTER
This value indicates that each row of components should be centered.
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.
 

Constructor Summary
 FlowLayout()
Constructs a new Flow Layout with a centered alignment and a default 5-unit horizontal and vertical gap.
 FlowLayout(int align)
Constructs a new Flow Layout with the specified alignment and a default 5-unit horizontal and vertical gap.
 FlowLayout(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(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.
int  getVgap()
Gets the vertical gap between components.
void  layoutContainer(Container target)
Lays out the container.
Dimension  minimumLayoutSize(Container target)
Returns the minimum dimensions needed to layout the components contained in the specified target container.
Dimension  preferredLayoutSize(Container target)
Returns the preferred dimensions for this layout given the 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.
void  setVgap(int vgap)
Sets the vertical gap between components.
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, toString, wait, wait, wait
 

Field Detail

LEFT

public static final int LEFT
This value indicates that each row of components should be left-justified.

CENTER

public static final int CENTER
This value indicates that each row of components should be centered.

RIGHT

public static final int RIGHT
This value indicates that each row of components should be right-justified.
Constructor Detail

FlowLayout

public FlowLayout()
Constructs a new Flow Layout with a centered alignment and a default 5-unit horizontal and vertical gap.

FlowLayout

public FlowLayout(int align)
Constructs a new Flow Layout 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, or FlowLayout.CENTER.
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 of FlowLayout.LEFT, FlowLayout.RIGHT, or FlowLayout.CENTER.

Parameters:
align - the alignment value.
hgap - the horizontal gap between components.
vgap - the vertical gap between components.
Method Detail

getAlignment

public int getAlignment()
Gets the alignment for this layout. Possible values are FlowLayout.LEFT, FlowLayout.RIGHT, or FlowLayout.CENTER.
Returns:
the alignment value for this layout.
See Also:
setAlignment

setAlignment

public void setAlignment(int align)
Sets the alignment for this layout. Possible values are FlowLayout.LEFT, FlowLayout.RIGHT, and FlowLayout.CENTER.
Parameters:
align - the alignment value.
See Also:
getAlignment

getHgap

public int getHgap()
Gets the horizontal gap between components.
Returns:
the horizontal gap between components.
See Also:
setHgap

setHgap

public void setHgap(int hgap)
Sets the horizontal gap between components.
Parameters:
hgap - the horizontal gap between components
See Also:
getHgap

getVgap

public int getVgap()
Gets the vertical gap between components.
Returns:
the vertical gap between components.
See Also:
setVgap

setVgap

public void setVgap(int vgap)
Sets the vertical gap between components.
Parameters:
vgap - the vertical gap between components
See Also:
getVgap

addLayoutComponent

public void addLayoutComponent(String name,
                               Component comp)
Adds the specified component to the layout. Not used by this class.
Implements:
addLayoutComponent in interface LayoutManager
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.
Implements:
removeLayoutComponent in interface LayoutManager
Parameters:
comp - the component to remove
See Also:
removeAll

preferredLayoutSize

public Dimension preferredLayoutSize(Container target)
Returns the preferred dimensions for this layout given the components in the specified target container.
Implements:
preferredLayoutSize in interface LayoutManager
Parameters:
target - the component which needs to be laid out
Returns:
the preferred dimensions to lay out the subcomponents of the specified container.
See Also:
Container, minimumLayoutSize, getPreferredSize

minimumLayoutSize

public Dimension minimumLayoutSize(Container target)
Returns the minimum dimensions needed to layout the components contained in the specified target container.
Implements:
minimumLayoutSize in interface LayoutManager
Parameters:
target - the component which needs to be laid out
Returns:
the minimum dimensions to lay out the subcomponents of the specified container.
See Also:
preferredLayoutSize, Container, doLayout

layoutContainer

public void layoutContainer(Container target)
Lays out the container. This method lets each component take its preferred size by reshaping the components in the target container in order to satisfy the constraints of this FlowLayout object.
Implements:
layoutContainer in interface LayoutManager
Parameters:
target - the specified component being laid out.
See Also:
Container, doLayout

toString

public String toString()
Returns a string representation of this FlowLayout object and its values.
Returns:
a string representation of this layout.
Overrides:
toString in class Object

Contents | Package | Class | Tree | Deprecated | Index | Help Java 1.2 Beta 3
PREV | NEXT SHOW LISTS | HIDE LISTS

Submit a bug or feature
Submit comments/suggestions about new javadoc look.
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-1998 Sun Microsystems, Inc. 901 San Antonio Road, Palo Alto, California, 94303, U.S.A. All Rights Reserved.