otherWin задает окно, содержащее ваше дочернее окно. Для
спецификации родительского окна используется lmParent.
otherEdge задает конкретный край otherWin, с помощью которого вы ограничиваете свое дочернее окно (допускаются те же значение, что и для edge).
value имеет разный смысл в зависимости от значения rel и
Units.
TEdgeConstraint содержит также ряд функций, которые вы можете использовать для задания предопределенных соотношений, тесно
связанных с теми, которые задаются в Set.
Для задания схемы окна недостаточно одного ограничения расположения. Например, указание того, что окно должно находиться на
10 элементов изображения ниже другого окна ничего не говорит о
высоте и ширине окна, расположении его левого или правого края
или нижней границы. Комбинация ограничений схемы расположения может полностью определить расположение окна. TLayoutMetrics использует 4 ограничения расположения: два объекта TEdgeConstraint
(X и Y), TEdgeOrWidthConstraint (Width) и TEdgeOrHeightConstraint
(Height).
TLayoutMetrics - достаточно простой класс. Его конструктор
не имеет параметров и только устанавливает элемент каждого ограничения. Для каждого ограничения схемы ограничивающее окно обнуляется, соотношение устанавливается в lmAsIs, единицы устанавливаются в lmLayoutUnits, а значение - в 0.
После построения объекта TLayoutMetrics вам нужно задать ограничения схемы нужного окна. Для установки каждого ограничения
можно использовать соответствующую функцию.
Чтобы лучше понять, как совместно работают ограничения, выполните пример приложения LAYOUT из каталога примеров программ.
Его диалоговое окно позволяет изменить ограничения каждого из
окон и увидеть результаты. Однако ограничения нужно описывать
полностью. Неполное описание может приводить к аварийному завершению.