JavaTM 2 Platform
Standard Ed. 5.0

java.awt
Class GridLayout

java.lang.Object
  extended by java.awt.GridLayout
All Implemented Interfaces:
LayoutManager, Serializable

public class GridLayout
extends Object
implements LayoutManager, Serializable

The GridLayout class is a layout manager that lays out a container's components in a rectangular grid. The container is divided into equal-sized rectangles, and one component is placed in each rectangle. For example, the following is an applet that lays out six buttons into three rows and two columns:


 import java.awt.*;
 import java.applet.Applet;
 public class ButtonGrid extends Applet {
     public void init() {
         setLayout(new GridLayout(3,2));
         add(new Button("1"));
         add(new Button("2"));
         add(new Button("3"));
         add(new Button("4"));
         add(new Button("5"));
         add(new Button("6"));
     }
 }
 

If the container's ComponentOrientation property is horizontal and left-to-right, the above example produces the output shown in Figure 1. If the container's ComponentOrientation property is horizontal and right-to-left, the example produces the output shown in Figure 2.

Shows 6 buttons in rows of 2. Row 1 shows buttons 1 then 2.
 Row 2 shows buttons 3 then 4. Row 3 shows buttons 5 then 6. Shows 6 buttons in rows of 2. Row 1 shows buttons 2 then 1.
 Row 2 shows buttons 4 then 3. Row 3 shows buttons 6 then 5.
Figure 1: Horizontal, Left-to-Right Figure 2: Horizontal, Right-to-Left

When both the number of rows and the number of columns have been set to non-zero values, either by a constructor or by the setRows and setColumns methods, the number of columns specified is ignored. Instead, the number of columns is determined from the specified number or rows and the total number of components in the layout. So, for example, if three rows and two columns have been specified and nine components are added to the layout, they will be displayed as three rows of three columns. Specifying the number of columns affects the layout only when the number of rows is set to zero.

Since:
JDK1.0
See Also:
Serialized Form

Constructor Summary
GridLayout()
          Creates a grid layout with a default of one column per component, in a single row.
GridLayout(int rows, int cols)
          Creates a grid layout with the specified number of rows and columns.
GridLayout(int rows, int cols, int hgap, int vgap)
          Creates a grid layout with the specified number of rows and columns.
 
Method Summary
 void addLayoutComponent(String name, Component comp)
          Adds the specified component with the specified name to the layout.
 int getColumns()
          Gets the number of columns in this layout.
 int getHgap()
          Gets the horizontal gap between components.
 int getRows()
          Gets the number of rows in this layout.
 int getVgap()
          Gets the vertical gap between components.
 void layoutContainer(Container parent)
          Lays out the specified container using this layout.
 Dimension minimumLayoutSize(Container parent)
          Determines the minimum size of the container argument using this grid layout.
 Dimension