Разработка и Конфигурация · 11 мин
Как поменять цвет в 1С через конфигуратор
Как изменить цвет формы, текста и элементов в 1С через конфигуратор: стили, условное оформление, программное изменение цвета. Пошаговая инструкция для 8.3.
Изменить цвет интерфейса 1С через конфигуратор можно несколькими способами: через общие стили, через настройки свойств конкретных элементов формы, через условное оформление динамических списков и программно — из встроенного языка. Выбор способа зависит от того, что именно нужно перекрасить: весь интерфейс целиком, отдельную форму, строки таблицы по условию или конкретное поле.
Важно понимать: в управляемых формах (платформа 8.2 и новее) разработчик не задаёт цвета «напрямую» как в обычных формах 8.1 — платформа сама компонует интерфейс, а вы лишь указываете элементам стилевые цвета или абсолютные значения RGB. Поэтому грамотный подход — работать через стили, чтобы оформление оставалось единообразным и не ломалось при смене темы интерфейса пользователем.
Ниже разобраны все рабочие способы: от простого изменения цвета текста поля до условного окрашивания строк списка документов. Инструкции применимы к платформе 1С:Предприятие 8.3 в режиме управляемых форм; про особенности обычных форм сказано отдельно.
Способы изменения цвета: что выбрать под свою задачу
Прежде чем открывать конфигуратор, определите масштаб задачи. Если нужно перекрасить весь интерфейс (например, сделать фирменные цвета компании), правильный инструмент — общие стили. Если требуется выделить одно поле или надпись на конкретной форме — достаточно свойств элемента. Если цвет должен зависеть от данных (просроченные документы красным, оплаченные зелёным) — нужен механизм условного оформления.
Отдельный случай — программное изменение цвета из кода, когда логика окраски слишком сложна для декларативных настроек. Этот способ гибче, но требует аккуратности: цвет, заданный кодом, может конфликтовать с условным оформлением и стилями.
Сравнение способов
Меняют оформление всей конфигурации. Подходят для корпоративных цветов. Ограничение: влияют на все формы сразу.
Цвет конкретного поля, надписи, кнопки. Подходят для точечных правок. Ограничение: не реагируют на данные.
Цвет зависит от значения данных в строке списка. Подходит для динамических списков и табличных частей.
Максимальная гибкость через объект Цвет. Ограничение: сложнее сопровождать, возможны конфликты со стилями.
Подготовка: открываем конфигуратор и делаем копию
Любые изменения в конфигураторе затрагивают структуру прикладного решения, поэтому начинайте с резервной копии. Для файловой базы достаточно скопировать файл 1Cv8.1CD или выгрузить информационную базу через пункт «Администрирование → Выгрузить информационную базу». Для клиент-серверной базы сделайте выгрузку dt или средствами СУБД.
Откройте конфигуратор, войдите под пользователем с правами администратора и выполните «Конфигурация → Открыть конфигурацию». Если конфигурация типовая и находится на поддержке, изменение стилей и форм потребует снятия объектов с поддержки или включения режима «с сохранением поддержки» — это повлияет на будущие обновления.
Изменение цвета через общие стили
Общие стили находятся в ветке «Общие → Стили» дерева конфигурации. Каждый стиль — это набор элементов стиля (цвет текста поля, цвет фона, шрифт заголовка и т.д.), а элементы стиля определены в ветке «Общие → Элементы стиля». Платформа применяет стиль целиком к интерфейсу.
Чтобы поменять конкретный цвет, откройте нужный элемент стиля — например, «ЦветТекстаПоля» или «ЦветФонаФормы» — и задайте новое значение. Цвет можно выбрать из палитры, задать как абсолютный (RGB) или как ссылку на цвет стиля Windows. После обновления конфигурации базы данных (F7) изменения применятся ко всем формам, где используется этот элемент стиля.
Создавать отдельный стиль имеет смысл, если нужна альтернативная тема оформления: тогда в свойствах корня конфигурации указывается основной стиль, а пользователи могут переключаться между темами, если это предусмотрено настройками клиентского приложения.
- 1Сделайте резервную копию базы
- 2Откройте конфигуратор и ветку «Общие → Элементы стиля»
- 3Найдите нужный элемент, например «ЦветФонаФормы»
- 4Задайте новый цвет через палитру или значение RGB
- 5Обновите конфигурацию базы данных (F7)
- 6Запустите предприятие и проверьте формы, где применён элемент
Изменение цвета конкретного элемента формы
Для точечной правки откройте нужную форму объекта (документа, справочника, обработки) в конфигураторе. Выделите элемент в дереве элементов формы и в палитре свойств найдите свойства «ЦветТекста», «ЦветФона», «ЦветРамки», а для надписей и кнопок — также «Шрифт». По умолчанию там стоит значение «Авто», то есть цвет берётся из стиля.
Щёлкните по полю выбора цвета и задайте: абсолютный цвет (красный, синий, произвольный RGB), цвет стиля (ссылка на элемент стиля — предпочтительный вариант) или цвет Windows. Использование ссылки на элемент стиля вместо абсолютного значения — хорошая практика: при смене темы интерфейса такие элементы перекрасятся автоматически и не выбьются из общего оформления.
Особенности для разных элементов
У полей ввода цвет текста и фона применяется напрямую. У таблиц формы цвета задаются для всей таблицы, а покрасить отдельные строки статически нельзя — для этого служит условное оформление. У кнопок в управляемых формах возможности окраски ограничены: платформа во многом игнорирует произвольный цвет фона кнопок командных панелей, сохраняя единый вид интерфейса.
Условное оформление: цвет по значению данных
Условное оформление — основной способ раскрасить строки динамического списка (списка документов, справочника) или табличной части в зависимости от данных. Например, подсветить красным непроведённые документы или зелёным — оплаченные счета.
Откройте форму списка, выделите элемент списка (таблицу) и перейдите в его свойство «УсловноеОформление» либо в настройки динамического списка через «Ещё → Настроить список» на закладке «Условное оформление» — в конфигураторе это делается в свойствах реквизита формы типа «ДинамическийСписок». Добавьте элемент оформления, задайте условие (отбор, например «Проведен Равно Нет»), укажите оформляемые поля и параметр оформления «Цвет текста» или «Цвет фона» с нужным значением.
Несколько правил условного оформления применяются в порядке списка, при совпадении условий срабатывают все подходящие — при конфликте одного параметра приоритет у более раннего правила. Проверяйте результат в режиме предприятия на реальных данных, где условие точно выполняется.
Программное изменение цвета из встроенного языка
Когда декларативных средств недостаточно, цвет задаётся кодом через объект «Цвет». Конструктор принимает либо три числа RGB (0–255), либо предопределённое значение перечисления цветов. Пример для элемента формы: установить свойство ЦветТекста у элемента, обратившись к нему через коллекцию Элементы формы.
Типичный сценарий — окраска поля при открытии формы или при изменении данных в обработчиках «ПриОткрытии», «ПриИзменении». Учтите, что программно заданный цвет элемента формы действует до конца сеанса работы с формой и перекрывает значение из свойств, но не отменяет условное оформление списков — у него собственный механизм приоритетов.
Элементы.СуммаДокумента.ЦветТекста = Новый Цвет(192, 0, 0);
Элементы.Комментарий.ЦветФона = WebЦвета.СветлоЖелтый;Для условного оформления из кода используется коллекция УсловноеОформление списка или формы: создаётся элемент, заполняются отбор, оформление и поля. Это удобно, когда набор правил формируется динамически — например, по настройкам пользователя.
Проверка результата и откат изменений
После любых правок обновите конфигурацию базы данных (клавиша F7) и запустите режим предприятия. Проверьте не только целевую форму, но и смежные: изменение элемента стиля могло затронуть десятки форм. Особое внимание уделите читаемости — контрасту текста и фона.
Если результат не устроил, откат зависит от способа: для свойств элементов верните значение «Авто», для условного оформления удалите или отключите правило, для стилей восстановите прежнее значение элемента стиля. Если копия не делалась и конфигурация типовая, можно вернуть типовое состояние объекта через «Конфигурация → Поддержка → Настройка поддержки» с загрузкой из файла поставки.
Как проверить результат
Цвет применён, текст читаем
Цвет не изменился или текст сливается с фоном
Оформление остаётся адекватным в светлой и тёмной теме
Абсолютный цвет делает элемент невидимым в тёмной теме
Условное оформление красит только нужные строки
Красятся все строки или ни одной — ошибка в условии
Ограничения и частые вопросы
Управляемые формы намеренно ограничивают свободу окраски: платформа стремится к единому виду интерфейса. Нельзя, например, произвольно перекрасить системные панели, заголовок окна и большинство кнопок командных панелей. Если задача — полностью «фирменный» интерфейс, реалистичный путь — настройка стилей и картинок, а не покраска каждого элемента.
В обычных формах (устаревший режим, типовые конфигурации на 8.1–8.2) возможностей больше: элементы рисуются напрямую, и свойства цвета работают без ограничений управляемого интерфейса. Но разрабатывать новое в обычных формах не рекомендуется.
Что важно запомнить
Глобальные цвета меняются через элементы стиля, точечные — через свойства ЦветТекста и ЦветФона элемента формы, по данным — через условное оформление списка, сложная логика — программно через объект Цвет. Перед правками делайте копию базы, а для типовых конфигураций рассмотрите расширение вместо изменения типового кода.
Можно ли поменять цвет без конфигуратора, прямо в режиме предприятия?
Частично да. Пользователь может настроить условное оформление динамического списка через «Ещё → Настроить список», если это не запрещено разработчиком. Но изменить стили, свойства элементов формы и цвета кода без конфигуратора нельзя.
Почему заданный цвет элемента не применяется?
Чаще всего причины такие: конфигурация базы данных не обновлена после правки, цвет перекрыт условным оформлением, элемент не тот (изменён дубль в другой форме) либо платформа игнорирует окраску данного типа элемента в управляемом интерфейсе, как это бывает с кнопками.
Как раскрасить строки табличной части документа по условию?
Используйте условное оформление формы: в редакторе формы откройте свойство «УсловноеОформление», добавьте правило с отбором по полю табличной части (например, «Объект.Товары.Количество Равно 0»), укажите оформляемые поля этой таблицы и задайте цвет фона или текста.
Можно ли задать цвет в формате HEX, как в веб-дизайне?
Напрямую HEX-строка в палитре свойств не вводится. Переведите значение в RGB и задайте три компонента, либо программно создайте объект Цвет с числовыми параметрами красного, зелёного и синего каналов от 0 до 255.
Изменение стилей в типовой конфигурации сломает обновление?
Не сломает, но усложнит: изменённые объекты при обновлении потребуют ручного сравнения и объединения. Чтобы этого избежать, вынесите доработки в расширение конфигурации — формы и условное оформление через расширения изменяются штатно.
Как вернуть стандартные цвета после экспериментов?
Для элементов формы установите свойства цвета в «Авто» — вернётся значение из стиля. Для элементов стиля восстановите прежние значения вручную или из резервной выгрузки. Для типовых объектов можно выполнить сравнение с конфигурацией поставщика и вернуть типовое состояние.