Как убрать автоматическое двоеточие в заголовках полей управляемых форм 1С 8.3

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

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

Метод 1: Использование свойства «АвтоЗаголовок» (для платформы 8.3.25 и выше)

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

  1. Откройте свойства формы (самого верхнего уровня дерева элементов).
  2. Найдите свойство АвтоЗаголовок (AutoTitle).
  3. Установите значение в Ложь.

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

Метод 2: Группировка с использованием декораций

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

Выполним следующие шаги:

  1. Создайте на форме группу (вид — Группа элементов - обычная группа).
  2. Установите для группы свойство Группировка в значение Горизонтальная.
  3. У самой группы отключите отображение заголовка (свойство Отображать заголовок — Ложь).
  4. Переместите ваше поле (например, ПорогНечёткости) внутрь этой группы.
  5. У поля в свойстве Положение заголовка выберите значение Нет.
  6. Добавьте в эту же группу элемент Декорация (вид — Надпись).
  7. Поместите декорацию ПЕРЕД полем ввода.
  8. В тексте декорации напишите нужный вам заголовок без двоеточия.

Этот метод позволяет полностью контролировать внешний вид текста. Вы можете программно менять текст декорации в любой момент:

Элементы.ДекорацияЗаголовокПоля.Заголовок = "Нужный текст без двоеточия";

Метод 3: Использование «Пути к данным заголовка» группы

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

  1. Поместите поле в группу.
  2. У поля отключите заголовок (Положение заголовка — Нет).
  3. В свойствах группы найдите поле Путь к данным заголовка.
  4. Укажите реквизит, значение которого должно отображаться в качестве названия.

Это решение отлично подходит для случаев, когда заголовок должен содержать текущее значение поля, например: "Уровень чувствительности 50".

Метод 4: Форматирование через свойства поля надписи

Рассмотрим ситуацию, когда вам нужно реализовать бегунок (полосу регулирования) с динамическим текстом. Посмотрим на пример реализации, где заголовок меняется сам без написания кода на встроенном языке:

  1. Создайте два элемента формы, связанных с одним и тем же числовым реквизитом ПорогНечёткости.
  2. Первый элемент сделайте видом Поле надписи.
  3. В свойстве Формат для этого поля пропишите шаблон. Например: ЧФ='Порог нечёткости: Ч'; ЧН=. Здесь символ Ч внутри кавычек заменяется платформой на само значение числа.
  4. Второй элемент сделайте видом Поле полосы регулирования и отключите у него заголовок.

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

Метод 5: Использование расширенной подсказки (ExtendedTooltip)

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

  1. Отключите основной заголовок поля.
  2. В свойство Подсказка впишите ваш текст.
  3. Установите Отображение подсказки в значение Сверху или Слева.
  4. Если нужен особый стиль, используйте Расширенную подсказку. В ней можно задать Отображение — Выделение.

Важный нюанс: расширенная подсказка поддерживает объект ФорматированнаяСтрока. Это позволяет не только убрать двоеточие, но и выделить часть текста жирным шрифтом или цветом, что недоступно для обычного заголовка.

Метод 6: Изменение положения заголовка

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

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

Программное управление заголовком без двоеточия

Если вы пытаетесь программно изменить заголовок через Элементы.ВашеПоле.Заголовок = "Текст", и положение заголовка установлено как «Лево», 1С все равно добавит двоеточие. Чтобы этого избежать при программном выводе, используйте связку с декорацией, как описано в Методе 2. Выясним, как это выглядит в коде при использовании форматированных строк для создания сложных надписей:


// Пример создания сложного заголовка в декорации без двоеточия
ТекстЗаголовка = Новый ФорматированнаяСтрока("Текущий порог ", Новый Шрифт(,,Истина), ЦветаСтиля.ПоясняющийТекст);
Элементы.ДекорацияЗаголовок.Заголовок = ТекстЗаголовка;

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

← На главную