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

# TControl.AutoAdjustLayout

Applies an automatic adjustment layout policy to the control.

## Declaration

Source position: controls.pp line 1691

`public procedure TControl.AutoAdjustLayout(`
`AMode: TLayoutAdjustmentPolicy;`
`const AFromPPI: Integer;`
`const AToPPI: Integer;`
`const AOldFormWidth: Integer;`
`const ANewFormWidth: Integer`
`); virtual;`

## Arguments

`AMode` |  | Layout policy applied in the method. Controls the actions performed to scale and / or position the control.
`AFromPPI` |  | Design-time Pixels per Inch setting. Used to derive scaling factors applied in the method.
`AToPPI` |  | Run-time Pixels per Inch setting for the current monitor. Used to derive scaling factors applied in the method.
`AOldFormWidth` |  | Form width prior to applying the auto-adjustment policy. Used to calculate an x-axis scaling factor applied in the method.
`ANewFormWidth` |  | Form width after the auto-adjustment policy is applied. Used to calculate an x-axis scaling factor applied in the method.

## Description

AutoAdjustLayout can be used to alter PPI settings, scale the control, or apply changes to height or width without scaling.

AMode indicates the layout policy applied in the method, and the actions performed to achieve the task.

Scaling factors are calculated (when needed) for both horizontal (X-axis) and vertical (Y-axis ) adjustments. The factors may represent changes to the PPI settings, or changes in the width for the control.

AutoAdjustLayout temporarily disables auto-sizing, and calls DoAutoAdjustLayout to apply the scaling factors or size changes.