Как программно убрать или скрыть кнопку «О программе» в 1С:Предприятие?

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

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

Ограничения стандартного интерфейса 1С

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

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

Решение проблемы через режим «Киоск»

Начиная с версии платформы 8.3.10, появился специальный режим работы основного окна — Киоск. В этом режиме платформа скрывает гиперссылку с именем текущего пользователя, а также полностью удаляет кнопку «О программе».

Проанализируем, как переключить клиентское приложение в данный режим программно. Для этого используется метод КлиентскоеПриложение.УстановитьРежимОсновногоОкна() с параметром РежимОсновногоОкнаКлиентскогоПриложения.Киоск.

Критически важное ограничение: данный метод необходимо вызывать строго в обработчике события ПередНачаломРаботыСистемы модуля управляемого приложения. Если вызвать его позже (например, в событии ПриНачалеРаботыСистемы или в модуле формы), платформа вызовет исключение.

Рассмотрим пример кода в модуле управляемого приложения:


Процедура ПередНачаломРаботыСистемы(Отказ)
    
    // Переводим приложение в режим "Киоск" для скрытия системных кнопок
    КлиентскоеПриложение.УстановитьРежимОсновногоОкна(РежимОсновногоОкнаКлиентскогоПриложения.Киоск);
    
КонецПроцедуры

Также режим «Киоск» можно настроить статически без использования кода — в свойствах корня конфигурации в поле «Режим основного окна клиентского приложения».

Особенности применения и побочные эффекты режима «Киоск»

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

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

Альтернативные варианты брендирования

Если ваша задача состоит не в блокировке интерфейса, а в сокрытии сведений о разработчике или замене фирменного стиля, разберем альтернативные варианты:

  1. Переопределение свойств метаданных: В свойствах корня конфигурации вы можете указать собственные значения для полей «Поставщик», «Версия», «Краткая информация», «Подробная информация», «Авторские права» и загрузить собственный логотип. При этом окно «О программе» останется доступным, но будет отображать данные вашей компании.
  2. Веб-клиент и кастомизация CSS: При работе через веб-клиент скрыть верхнюю панель и кнопку «О программе» можно средствами веб-сервера путем кастомизации стилей CSS или встраиванием веб-клиента в сторонний веб-ресурс через iframe.
← На главную