Как убрать пустые поля и настроить выравнивание элементов на управляемой форме 1С?

Программист 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

При разработке управляемых форм в платформе 1С:Предприятие 8.3 разработчики часто сталкиваются с ситуацией, когда элементы управления на форме смещаются, между реквизитами появляются большие пустые отступы, а колонки «ШапкаЛево» и «ШапкаПраво» начинают влиять на размещение соседних элементов. Разберем по шагам причины такого поведения платформы и выясним, как правильно настроить свойства групп и полей ввода для получения аккуратного интерфейса.

Почему реквизиты смещаются и влияют друг на друга

Проанализируем базовые механизмы автоматической компоновки управляемых форм. Платформа 1С использует механизм динамической верстки, который стремится свести элементы из разных групп в единую невидимую координатную сетку. Это приводит к следующим особенностям:

  1. Сквозной расчет сетки выравнивания. Платформа пытается выровнять заголовки и поля ввода соседних колонок по единым вертикальным направляющим. Из-за этого изменение ширины или положения элемента в левой колонке напрямую отражается на правой колонке.
  2. Разница в высоте элементов. Если в одной колонке размещено многострочное текстовое поле или картинка, платформа увеличивает высоту всей строки, создавая вертикальные пустоты напротив обычных однострочных полей в соседней колонке.
  3. Отображение рамок и заголовков групп. По умолчанию у создаваемых групп включено отображение рамки или заголовка, что добавляет дополнительные внутренние и внешние отступы.

Устранение лишних отступов через свойства группы

Рассмотри основной способ решения проблемы, который помог автору темы на форуме. Часто причиной огромных полей вокруг группы элементов является включенное визуальное оформление группы или ее заголовок.

  1. Откроем управляемую форму в конфигураторе и выделим родительскую группу (например, ГруппаШапка, ШапкаЛево или ШапкаПраво).
  2. В палитре свойств найдем свойство Отображение и установим его в значение Нет (или Слабое выделение, если требуется тонкая рамка).
  3. На вкладке Использование (при поблочном отображении свойств) переключим флаг ОтображатьЗаголовок в значение Ложь.

После снятия флага отображения заголовка и отключения рамки группы отступы вокруг полей ввода существенно уменьшатся, а элементы встанут плотнее друг к другу.

Изоляция колонок и настройка сквозного выравнивания

Выясним, как исключить взаимное влияние элементов из колонок «ШапкаЛево» и «ШапкаПраво». Чтобы элементы левой колонки не сдвигали реквизиты правой, необходимо применить следующие настройки:

  1. Отключение сквозного выравнивания. Установим у левой и правой вертикальных групп свойство СквозноеВыравнивание в значение Не использовать. Это запретит платформе подстраивать ширину полей ввода и заголовков под элементы из соседних веток дерева формы.
  2. Настройка свойства «Объединенная». По умолчанию у группы установлен флаг Объединенная. Если его сбросить, элементы внутри группы перестанут восприниматься как единый монолитный блок и будут участвовать в построчном выравнивании. Для полной изоляции двух независимых колонок этот флаг обычно оставляют включенным совместно с отключением сквозного выравнивания.
  3. Жесткая фиксация группировки. У родительской группы, объединяющей две колонки, установим свойство Группировка в значение Горизонтальная всегда. Это предотвратит перенос правой колонки под левую при изменении размеров окна.

Управление растягиванием и размерами полей

Посмотрим на дополнительные свойства, которые предотвращают появление паразитных пустот по вертикали и горизонтали:

  1. Отключение автоматического растягивания. У полей ввода и декораций изменим значение свойства РастягиватьПоВертикали с Авто на Нет. Это предотвратит разрастание полей по высоте при увеличении формы.
  2. Ограничение ширины. Если текстовые поля чрезмерно растягиваются по горизонтали, зададим свойства МаксимальнаяШирина или Ширина, а также отключим АвтоМаксимальнаяШирина.
  3. Положение заголовка. В случаях, когда заголовки полей ввода слишком длинные и сдвигают поля ввода, переключим свойство ПоложениеЗаголовка в значение Верх или Нет.

Применение комплекса этих настроек позволяет добиться жесткой, аккуратной и предсказуемой верстки управляемой формы в 1С без нежелательных отступов и смещений.

← На главную