Type: Boolean
Availability: Read or write at any time
The relativeWidth property of the Control class specifies whether the width of a control is relative to the size of its parent. If this property is set to true, the control width is adjusted proportionally when the parent is resized.
The settings of the relativeWidth property are listed in the following table.
Value | Description |
---|---|
false | If the parent is resized, no action occurs (the default) |
true | Resize the control height in proportion to the size change undergone by the parent |
Setting the relativeWidth property to true causes the adjustment of the width for the control when the parent size changes. For example, if all of the relative properties are set to true, two adjacent list boxes resize, move, and are still adjacent after the resize of a form. Similarly, if you set the relativeTop and relativeLeft properties to true, a button remains the same size but it is positioned proportionally to the form size.
Some controls automatically resize themselves, and setting this property may have no effect. In addition, the relativeWidth property is ignored when a control is aligned.
The size ratios between the control and its parent are calculated when:
A form is loaded, if any of the property values are set to true. The ratios are calculated using the development property values of left, top, height, and width of the control and its parent established by the Painter.
The form is running if:
Any of the relativeLeft, relativeTop, relativeHeight, or relativeWidth properties of the control are changed to true.
Any of the left, top, height, or width properties of the control are set and any of the relative properties are set to true.
The move method of the Window class is called for the control and any of the relative properties are set to true.
In these situations, the current size of the control and parent are used to recalculate the size ratios.
If logic changes the position or size of the control, the distances to the edges of the parent of the control are re-evaluated and used from then on (that is, the relative ratios are re-evaluated).
When using the relativeWidth property, some controls have fixed widths. Any stretching is ignored for those cases, as follows.
A Button control that is automatically sized to its picture property
A Label control that is automatically sized
A Picture control that automatically sizes to its picture property; that is, Stretch_ControlTo (2) and Stretch_Proportional (3)
An automatically positioned Sheet control