# Java: Summary - GUI Layouts 1 - FlowLayout, BorderLayout, GridLayout

Set the layout manager for a container p (usually a JPanel or Container) can be set with something like the following.

       p.setLayout(new FlowLayout());

### Layouts (FlowLayout, BorderLayout, GridLayout)
FlowLayout - Arranges widgets left-to-right, top-to-bottom.
`flow =` | new FlowLayout(); | Creates FlowLayout, centered with 5 pixel gaps.
`flow =` | new FlowLayout(align); | Specifies alignment (`FlowLayout.LEFT`, `FlowLayout.CENTER`, `FlowLayout.RIGHT`).
`flow =` | new FlowLayout(align, h, v); | Specifies alignment and horizontal (h) and vertical (v) gaps in pixels.
| p.add(widget); | Adds widget to the next left-to-right, top-to-bottom position.
BorderLayout - Lays out components in BorderLayout.NORTH, EAST, SOUTH, WEST, and CENTER sections.
`bord =` | new BorderLayout(); | Creates BorderLayout. Widgets added with constraint to tell where.
`bord =` | new BorderLayout(h, v); | Creates BorderLayout with horizonal and vertical gaps sizes in pixels.
| p.add(widget, pos); | Adds widget to one of the 5 border layout regions, pos (see list above).
GridLayout - Lays out components in equal sized rectangular grid, added r-t-l, top-to-bottom.
grid = | new GridLayout(r, c); | Creates GridLayout with specified rows and columns.
`grid =` | new GridLayout(r,c,h,v); | As above but also specifies horizontal and vertical space between cells.
| p.add(widget); | Adds widget to the next left-to-right, top-to-bottom cell.

Copyleft 2005 Fred Swartz