Home » openjdk-7 » java » awt » [javadoc | source]
java.awt
public class: FlowLayout [javadoc | source]
java.lang.Object
   java.awt.FlowLayout

All Implemented Interfaces:
    LayoutManager, java$io$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: 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:

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.

Field Summary
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. 
 int align    align is the property that determines how each row distributes empty space. It can be one of the following values:
    LEFT RIGHT CENTER
 
 int newAlign    newAlign is the property that determines how each row distributes empty space for the Java 2 platform, v1.2 and greater. It can be one of the following three values:
    LEFT RIGHT CENTER LEADING TRAILING
 
 int hgap    The flow layout manager allows a seperation of components with gaps. The horizontal gap will specify the space between components and between the components and the borders of the Container. 
 int vgap    The flow layout manager allows a seperation of components with gaps. The vertical gap will specify the space between rows and between the the rows and the borders of the Container. 
Constructor:
 public FlowLayout() 
 public FlowLayout(int align) 
 public FlowLayout(int align,
    int hgap,
    int vgap) 
Method from java.awt.FlowLayout Summary:
addLayoutComponent,   getAlignOnBaseline,   getAlignment,   getHgap,   getVgap,   layoutContainer,   minimumLayoutSize,   preferredLayoutSize,   removeLayoutComponent,   setAlignOnBaseline,   setAlignment,   setHgap,   setVgap,   toString
Methods from java.lang.Object:
clone,   equals,   finalize,   getClass,   hashCode,   notify,   notifyAll,   toString,   wait,   wait,   wait
Method from java.awt.FlowLayout Detail:
 public  void addLayoutComponent(String name,
    Component comp) 
    Adds the specified component to the layout. Not used by this class.
 public boolean getAlignOnBaseline() 
    Returns true if components are to be vertically aligned along their baseline. The default is false.
 public int getAlignment() 
    Gets the alignment for this layout. Possible values are FlowLayout.LEFT, FlowLayout.RIGHT, FlowLayout.CENTER, FlowLayout.LEADING, or FlowLayout.TRAILING.
 public int getHgap() 
    Gets 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.
 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.
 public Dimension minimumLayoutSize(Container target) 
    Returns the minimum dimensions needed to layout the visible components contained in the specified target container.
 public Dimension preferredLayoutSize(Container target) 
    Returns the preferred dimensions for this layout given the visible components in the specified target container.
 public  void removeLayoutComponent(Component comp) 
    Removes the specified component from the layout. Not used by this class.
 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.
 public  void setAlignment(int align) 
    Sets the alignment for this layout. Possible values are
    • FlowLayout.LEFT
    • FlowLayout.RIGHT
    • FlowLayout.CENTER
    • FlowLayout.LEADING
    • FlowLayout.TRAILING
 public  void setHgap(int hgap) 
    Sets the horizontal gap between components and between the components and the borders of the Container.
 public  void setVgap(int vgap) 
    Sets the vertical gap between components and between the components and the borders of the Container.
 public String toString() 
    Returns a string representation of this FlowLayout object and its values.