Почему окно документа в 1С не разворачивается на весь экран и как это исправить

Системный администратор 1С v8.3 (Обычные формы) 1C:Бухгалтерия Бухгалтерский учет IT и автоматизация бизнеса
← На главную

При работе в конфигурациях на обычных (толстых) формах, таких как 1С:Бухгалтерия предприятия 2.0, пользователи нередко сталкиваются с неприятным поведением интерфейса: окно документа или справочника открывается в фиксированном компактном размере, при попытке растянуть его границы форма упирается в невидимый барьер, а внутри появляются горизонтальные и вертикальные полосы прокрутки. Чаще всего эта проблема начинает массово проявляться после обновления платформы до версий ветки 8.3.10 и выше.

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

Причины сбоя масштабирования обычных форм

Проанализируем техническую сторону проблемы. Механизм классических (обычных) форм 1С изначально разрабатывался под графическую подсистему Windows GDI с жесткой привязкой к стандартному системному разрешению 96 DPI, что соответствует масштабу интерфейса 100%.

Начиная с релиза 8.3.10, разработчики платформы существенно переработали алгоритмы масштабирования для интерфейса «Такси» и управляемых форм. Однако в подсистеме обычных форм пересчет координат элементов при нестандартном системном масштабировании (например, 125%, 150% или при использовании экранов с высоким разрешением 4K/2K) стал вызывать ошибки:

  1. Платформа некорректно рассчитывает максимальные и минимальные границы клиентской области окна, из-за чего форма «залипает» в определенных координатах.
  2. При наличии нескольких мониторов с разной плотностью пикселей (Per-Monitor DPI) перемещение окна программы между экранами приводит к полной блокировке привязок.
  3. Внутренние пользовательские настройки положения окон кэшируют ошибочные координаты и воспроизводят сбой при каждом новом открытии документа.

Способ 1. Восстановление положения окна и сброс настроек

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

  1. Откроем проблемный документ в режиме 1С:Предприятие.
  2. В нижней панели открытых окон найдем ярлык нужного документа (например, «Поступление товаров и услуг» или «Авансовый отчет»).
  3. Нажмем правой кнопкой мыши по ярлыку окна и в появившемся контекстном меню выберем пункт Восстановить положение.
  4. Если окно по-прежнему не разворачивается, закроем программу и выполним очистку локального кэша настроек пользователя (удалим каталоги пользовательских настроек из папок %AppData%\1C\1cv8 и %LocalAppData%\1C\1cv8).

Способ 2. Настройка системного масштаба экрана Windows

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

  1. Нажмем правой кнопкой мыши по свободному месту рабочего стола Windows и откроем Параметры экрана.
  2. В разделе «Масштаб и разметка» найдем параметр изменения размера текста, приложений и других элементов.
  3. Установим масштаб строго в значение 100%.
  4. Выполним выход из учетной записи Windows и повторный вход, чтобы все системные метрики шрифтов и окон переинициализировались.

Способ 3. Переопределение режима масштабирования DPI для исполняемых файлов платформы

Если уменьшение масштаба до 100% делает текст на мониторе с высоким разрешением слишком мелким, настроим индивидуальные правила обработки высокого разрешения (High DPI) непосредственно для исполняемых файлов 1С.

  1. Перейдем в каталог установленной платформы через проводник (обычно это C:\Program Files\1cv8\8.3.XX.XXXX\bin\ или C:\Program Files (x86)\1cv8\8.3.XX.XXXX\bin\).
  2. Найдем исполняемые файлы 1cv8.exe и 1cestart.exe.
  3. Откроем свойства файла 1cv8.exe и перейдем на вкладку Совместимость.
  4. Нажмем кнопку Изменить параметры высокого DPI.
  5. Установим флаг Переопределите режим масштабирования высокого разрешения.
  6. В выпадающем списке «Масштабирование выполняется:» выберем вариант Приложение (Application) или Система (расширенная) (System Enhanced).
  7. Нажмем ОК, применим параметры и повторим аналогичную настройку для файла 1cestart.exe.

Этот режим заставляет Windows самостоятельно масштабировать растровое изображение окна, не вмешиваясь во внутреннюю координатную сетку обычных форм 1С.

Способ 4. Фиксация версии платформы для запуска

Если конфигурация работает исключительно в режиме обычного приложения и не использует функционал новых версий, наиболее стабильным решением будет запуск базы под релизом платформы, в котором не было проблем с DPI-масштабированием (например, ветки 8.3.8 или 8.3.9).

  1. В окне запуска 1С выделим нужную информационную базу и нажмем кнопку Изменить.
  2. Нажмем кнопку Далее и перейдем к шагу «Параметры запуска».
  3. В поле «Дополнительные параметры запуска» пропишем ключ принудительной версии: /V 8.3.9 или укажем точную версию в поле «Версия 1С:Предприятия».
  4. Сохраним настройки и запустим базу.

Способ 5. Проверка привязок элементов в конфигураторе

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

  1. Откроем форму проблемного документа в конфигураторе.
  2. В меню выберем Форма -> Проверить (или нажмем комбинацию клавиш Ctrl + R).
  3. В открывшемся окне тестирования интерактивно потянем границы формы во все стороны. Элементы с конфликтующими привязками будут подсвечены линиями сбоя или вызовут немедленную блокировку растяжения.
  4. В свойствах проблемных элементов проверим параметры привязки их границ к родительской панели и краям формы.
  5. В свойствах самой формы проверим параметр Способ отображения окна — переключение в значение Свободное часто устраняет конфликт позиционирования в главном MDI-окне программы.
← На главную