4.4.1.4.2.4.12.5. Линейная разметка

 
Позволяет линейно выравнять объекты внутри контейнера (экранной формы или фигуры).
 
Чтобы линейно выравнять объекты внутри контейнера (экранной формы или фигуры), добавьте в контейнер компонент Линейная разметка. Компонент невизуальный и виден только в области Структура объекта. На рисунке ниже показано, как на прямоугольник добавлен компонент Линейная разметка.
 
 
Все элементы, входящие в прямоугольник будут выравнены линейно по горизонтали или вертикали в зависимости от настройки свойств компонента:
Ориентация (int4) – направление выравнивания объектов внутри фигуры или формы:
1 – по горизонтали;
2 – по вертикали.
 
 
Промежуток (double) – расстояние между объектами внутри фигуры или формы.
 
 

Разметка мнемосхемы

 
 
Для разметки кнопок на первый контейнер (прямоугольник Rectangle_1) добавлен компонент Линейная разметка, на второй (прямоугольник Rectangle_2) – компонент Плоская разметка.
 
 
Чтобы установить вес разметки кнопкам второго контейнера, на каждую кнопку добавлен компонент Вес элемента разметки.
 
 
Чтобы элементы первого контейнера выстроились в горизонтальной ориентации, для кнопки Горизонтальная разметка создайте обработчик событий. Код обработчика на языке Astra.Om:
 
Rectangle_1.LinearLayout_1.Orientation = 1;
 
Чтобы элементы первого контейнера выстроились в вертикальной ориентацию, для кнопки Вертикальная разметка создайте обработчик событий. Код обработчика на языке Astra.Om:
 
Rectangle_1.LinearLayout_1.Orientation = 2;
 
Чтобы промежуток между элементами в первом прямоугольнике принял значение 50px и 20px, для кнопок Промежуток 50px и Промежуток 20px создайте обработчики событий. Код обработчиков на языке Astra.Om:
 
Rectangle_1.LinearLayout_1.Gap = 50;
Rectangle_1.LinearLayout_1.Gap = 20;
 
Чтобы элементам второго контейнера установить значимость разметки, для кнопки Применить значимость элементам создайте обработчик событий. Обработчик конвертирует и передает значение из текстового поля в значение свойства Значимость. Код обработчика на языке Astra.Om:
 
Rectangle_2.Button_1.LayoutWeight_1 = String.ToDouble(TextEdit_1.Text,1);
Rectangle_2.Button_2.LayoutWeight_1 = String.ToDouble(TextEdit_2.Text,1);