Как сместить заголовки вплотную к полям ввода на управляемой форме 1С?

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

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

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

Способ 1. Настройка свойства группы «Выравнивание элементов и заголовков»

Основным инструментом управления сеткой на уровне группы элементов является свойство ВыравниваниеЭлементовИЗаголовков (AlignItemsAndTitles). Проанализируем, как оно влияет на отображение:

  1. Откроем нужную форму в конфигураторе и выделим группу, в которой находятся смещаемые поля.
  2. В палитре свойств найдем параметр ВыравниваниеЭлементовИЗаголовков.
  3. По умолчанию установлено значение ВКолонку (или Авто, которое в большинстве случаев работает как колонка). При таком значении платформа резервирует под заголовки единую ширину, равную самому длинному заголовку в группе.
  4. Установим значение НеВыравнивать. В этом режиме поле ввода прижимается непосредственно к своему заголовку без учета длины надписей у соседних реквизитов.

Способ 2. Отключение сквозного выравнивания на форме или в родительской группе

Если элементы распределены по нескольким подгруппам, платформа может продолжать выравнивать их колонки по общей вертикали из-за включенного механизма сквозного выравнивания. Выясним причину такого поведения и устраним её:

  1. Перейдем к свойствам корневого элемента (самой формы) или главной родительской группы.
  2. Найдем свойство СквозноеВыравнивание (ThroughAlign).
  3. Установим для него значение НеИспользовать.

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

Способ 3. Использование горизонтальных групп и управление шириной полей

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

  1. Создадим элемент вида Группа элементов и установим её свойство Группировка в значение Горизонтальная всегда или Горизонтальная если возможно.
  2. Поместим внутрь группы нужные поля ввода.
  3. Для каждого поля снимем флаг в свойстве РастягиватьПоГоризонтали (StretchHorizontally), установив значение Ложь.
  4. При необходимости зададим фиксированное значение в свойстве Ширина (Width) в символах, чтобы поле не занимало всю свободную область строки.
  5. Убедимся, что для группы отключено сквозное выравнивание, а свойство ВыравниваниеЭлементовИЗаголовков установлено в НеВыравнивать или Авто.

Способ 4. Корректировка выравнивания флажков и положения заголовков

Флажки (поля с булевым типом данных) нередко выравниваются некорректно относительно обычных текстовых полей из-за особенностей отрисовки переключателя. Рассмотрим, как это исправить:

  1. Выделим флажки в отдельную подгруппу, чтобы изолировать их правила выравнивания от остальных полей ввода.
  2. В свойствах самого поля ввода можно изменить свойство ПоложениеЗаголовка (TitleLocation):
    • Значение Справа — заголовок переносится за поле (наиболее естественно для флажков);
    • Значение Сверху — заголовок размещается над окном ввода, что полностью решает проблему горизонтальных разрывов в интерфейсе «Такси»;
    • Значение Нет — заголовок скрывается, если рядом используется отдельная надпись или декорация.

Комбинируя отключение свойства СквозноеВыравнивание с установкой значения НеВыравнивать для свойства ВыравниваниеЭлементовИЗаголовков, можно добиться аккуратного и компактного расположения элементов формы без необходимости использования обходных путей вроде пустых подсказок или декораций.

← На главную