[Overview][Constants][Types][Classes][Procedures and functions][Variables][Index] |
[Properties (by Name)] [Methods (by Name)] [Events (by Name)]
TAnchorSide - the side on which anchoring is to be performed for the current control
Source position: controls.pp line 672
type TAnchorSide = class(TPersistent) |
||
public |
||
constructor Create(); |
|
|
destructor Destroy; override; |
|
|
procedure GetSidePosition(); |
|
GetSidePosition - returns the position of the side used for anchoring |
procedure Assign(); override; |
|
|
|
Owner - the Control that owns the current control that is to be anchored |
|
property Kind: TAnchorKind; [r] |
|
The Kind of anchoring to be used |
published |
||
|
The control whose anchoring properties are being determined |
|
property Side: TAnchorSideReference; [rw] |
|
The side on which anchoring is to be performed |
end; |
|
TAnchorSide - the side on which anchoring is to be performed for the current control |
|
| | ||
TPersistent |
||
? | ||
TObject |
TAnchorSide Class holding the reference sides of the anchors of a TControl. Every TControl has four AnchorSides: AnchorSide[akLeft], AnchorSide[akRight], AnchorSide[akTop] and AnchorSide[akBottom]. Normally if Anchors contain akLeft, and the Parent is resized, the LCL tries to keep the distance between the left side of the control and the right side of its parent client area. With AnchorSide[akLeft] you can define a different reference side. The kept distance is defined by the BorderSpacing. Example1: +-----+ +-----+ | B | | C | | | +-----+ +-----+ If you want to have the top of B the same as the top of C use B.AnchorSide[akTop].Side:=asrTop; B.AnchorSide[akTop].Control:=C; If you want to keep a distance of 10 pixels between B and C use B.BorderSpacing.Right:=10; B.AnchorSide[akRight].Side:=asrLeft; B.AnchorSide[akRight].Control:=C; Do not setup in both directions, because this will create a circle, and circles are not allowed. Example2: +-------+ +---+ | | | A | | B | +---+ | | +-------+ Centering A relative to B: A.AnchorSide[akTop].Side:=arsCenter; A.AnchorSide[akTop].Control:=B; Or use this. It's equivalent: A.AnchorSide[akBottom].Side:=arsCenter; A.AnchorSide[akBottom].Control:=B;