RowLayout

RowLayout lays out widgets in rows, but is more flexible than FillLayout. The type field controls whether the widgets will be placed in horizontal rows or vertical columns.

It can optionally wrap the widgets, creating as many rows or columns as are needed to display them. It also provides configurable margins on each edge of the layout, and configurable spacing between widgets within the layout. You can pack a RowLayout, which will force all widgets to be the same size. If you justify a RowLayout, extra space remaining in the Composite will be allocated as margins between the widgets.

The height and width of each widget in a RowLayout can be specified in a RowData object which should be set in the widget using setLayoutData(Object).

The following table summarizes the attributes of RowLayout.

Attribute

Description

justify

Can be one of HORIZONTAL (layout in a row), VERTICAL (layout in a column).

marginBottom Specifies the number of pixels to be placed along the bottom edge of the layout.
marginLeft Specifies the number of pixels to be placed along the left edge of the layout.
marginRight Specifies the number of pixels to be placed along the right edge of the layout.
marginTop Specifies the number of pixels to be placed along the top edge of the layout.
pack Specifies whether all widgets should be forced to be the same size.
spacing Specifies the number of pixels between one cell and its adjacent cells
type Can be one of HORIZONTAL (layout in rows), VERTICAL (layout in columns).
wrap Specifies whether a control will be wrapped to the next row or column if there is insufficient space in
the current row or column.

The following table summarize the attributes of RowData.

Attribute

Description

width

Specifies the width of the cell in pixels.

height Specifies the height of the cell in pixels.