    All Packages  Class Hierarchy  This Package  Previous  Next  Index

# 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:

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.

##

CENTER
  This value indicates that each row of components should be centered.
LEFT
  This value indicates that each row of components should be left-justified.
RIGHT
  This value indicates that each row of components should be right-justified.

##

FlowLayout()
  Constructs a new Flow Layout with a centered alignment and a default 5-unit horizontal and vertical gap.
FlowLayout(int)
  Constructs a new Flow Layout with the specified alignment and a default 5-unit horizontal and vertical gap.
FlowLayout(int, int, int)
  Creates a new flow layout manager with the indicated alignment and the indicated horizontal and vertical gaps.

##

addLayoutComponent(String, Component)
  Adds the specified component to the layout.
getAlignment()
  Gets the alignment for this layout.
getHgap()
  Gets the horizontal gap between components.
getVgap()
  Gets the vertical gap between components.
layoutContainer(Container)
  Lays out the container.
minimumLayoutSize(Container)
  Returns the minimum dimensions needed to layout the components contained in the specified target container.
preferredLayoutSize(Container)
  Returns the preferred dimensions for this layout given the components in the specified target container.
removeLayoutComponent(Component)
  Removes the specified component from the layout.
setAlignment(int)
  Sets the alignment for this layout.
setHgap(int)
  Sets the horizontal gap between components.
setVgap(int)
  Sets the vertical gap between components.
toString()
  Returns a string representation of this `FlowLayout` object and its values.

##

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.

##

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.

##

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.

  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.

  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.

  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.

  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.

  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

    All Packages  Class Hierarchy  This Package  Previous  Next  Index

Submit a bug or feature - Version 1.1.8 of Java Platform API Specification
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.
Copyright 1995-1999 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.