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

TControl.Anchors

The set of anchor definitions for this control.

Declaration

Source position: controls.pp line 1795

public property TControl.Anchors : TAnchors
  read FAnchors
  write SetAnchors
  stored IsAnchorsStored
  default [akLeft, akTop];

Description

Anchors is a TAnchors property which contains the edges used to align the position of the control relative to its Parent. Anchors allow the control to be repositioned and/or resized when the parent control is resized. Coordinate values in the control - like Left, Top, Bottom, and Right properties - are updated when the corresponding edge is anchored to its Parent.

The default value for the property is [akLeft, akTop], and indicates that only the Top and Left coordinates are anchored in the parent control.

For example:

[akLeft, akRight]
Causes the relative width for the control to be adjusted when the width of the parent control is changed.
[akTop, akBottom]
Causes the relative height for the control to be adjusted when the height of the parent control is changed.
[akTop, akLeft, akRight]
Causes the relative width (but not the height) for the control to be adjusted when the parent is resized. Like using the Align property.
[akTop, akLeft, akBottom, akRight]
Causes both the height and width to be adjusted when the parent control is resized. Like using alCustom in Align.

Setting a new value for the property causes the UpdateAnchorRules and AdjustSize methods to be called.

Values in Anchors are used (along with Align) in the DoAutoAdjustLayout method. They control whether values in Left, Top, Bottom, and Right are calculated using the ClientWidth and ClientHeight for the Parent control. The values in Anchors also used in the HeightIsAnchored and WidthIsAnchored methods.

Values in Anchors may be updated when a new value is assigned to the Align property which conflicts with the existing values in the property. They may also be updated when values are assigned to AnchorSide which cause vertical or horizontal centering to a sibling control (AnchorVerticalCenterTo, AnchorHorizontalCenterTo) or alignment to a companion control (AnchorToCompanion).

See also

TAnchors

  

Set type used to store values from the TAnchorKind enumeration.

TAnchorKind

  

The control side to be anchored.

TControl.Align

  

Specifies the placement of the control on its Parent control.

TControl.AnchorSide

  

Array of anchor definitions, indexed by the control sides.

TControl.AdjustSize

  

Smart way to DoAutoSize.

TControl.DoAutoAdjustLayout

  

Applies layout changes using the specified policy and scaling proportions to the control.

TControl.ClientHeight

  

The height for the client area on the control.

TControl.ClientWidth

  

The width of the client area for the control.

TControl.Parent

  

The control within which the control is shown.


Version 3.2 Generated 2024-02-25 Home