[Overview][Types][Classes][Procedures and functions][Index] | Reference for unit 'ExtCtrls' (#lcl)

# TCustomFlowPanel

[Properties (by Name)] [Methods (by Name)] [Events (by Name)]

The base class for TFlowPanel.

## Declaration

Source position: extctrls.pp line 1309

`type TCustomFlowPanel = class(TCustomPanel)`
`protected`
`procedure CMControlChange(); message;` |  | Handles the CM_CONTROLCHANGE message.
`procedure AlignControls(); override;` |  | Performs layout and alignment for flowed controls on the panel.
`procedure CalculatePreferredSize(); override;` |  | Calculates the preferred size for the control.
`public`
`constructor Create(); override;` |  | Constructor for the class instance.
`destructor Destroy; override;` |  | Destructor for the class instance.
`function GetControlIndex();` |  | Gets the ordinal position in ControlList for the specified control.
`procedure SetControlIndex();` |  | Sets the Index position in ControlList for the specified control.
`property AutoWrap: Boolean; [rw]` |  | Determines if controls in TCustomFlowPanel are wrapped.
`property ControlList: TFlowPanelControlList; [rw]` |  | Container used to stored TFlowPanelControl instances on the panel.
`property FlowStyle: TFlowStyle; [rw]` |  | Contains the flow direction used to position controls on the panel.
`property FlowLayout: TTextLayout; [rw]` |  | Use FlowLayout to set the layout (alignment) for the non-flowed coordinate. The default value is tlTop.
`end;`

## Inheritance

`TCustomFlowPanel` |  | The base class for TFlowPanel.
`TCustomPanel` |  | The base class for a general container which can hold other objects. It has a customizable border and a central text.
`TCustomControl` |  | The base class for windowed controls which paint themselves.
`TWinControl` |  | Implements a windowed control which can contain other child controls.
`TControl` |  | The base class for visible controls.
`TLCLComponent` |  | The base class for LCL components which have an associated widget.
`TComponent`
?
`TObject`

## Description

TCustomFlowPanel is a TCustomPanel descendant used to automatically position controls added to the panel in a grid-like layout.

The FlowStyle property determines layout direction for controls added to the panel.

FlowLayout controls the vertical positioning for controls in given row on the panel.

The ControlList property provides a list of wrapper classes maintained for each of the controls on the panel. Its items maintain the position and wrapping options for each control using the FlowStyle and FlowLayout algorithms.

Adding a control to the panel causes it to be positioned at the next cell in the layout. The Left and Top coordinates for each control are adjusted to position the control within a cell using the FlowStyle and FlowLayout properties for the panel. The Anchors and Align properties for child controls are ignored. The BorderSpacing setting for the controls is used, however.

AutoWrap indicates whether the controls are automatically flowed into rows based on their settings in ControlList.

## See also

TCustomPanel |  | The base class for a general container which can hold other objects. It has a customizable border and a central text.
TFlowPanel |  | Implements a panel with flowed layout for its controls.