ФормаКлиентскогоПриложения.ПриИзмененииПараметровЭкрана

События · OnChangeDisplaySettings

Возникает при изменении информации, собранной в объекте ИнформацияЭкранаКлиента: разрешение, ориентация и т.п. На мобильной платформе событие возникает только в активной форме. Если форма не активна, то обработчик события сработает после активизации формы, если изменения еще актуальны (например, устройство можно повернуть обратно, и тогда изменение ориентации станет неактуальным).

Синтаксис

ПриИзмененииПараметровЭкрана()
Полное описание, параметры и ограничения

ФормаКлиентскогоПриложения.ПриИзмененииПараметровЭкрана (ClientApplicationForm.OnChangeDisplaySettings)

ФормаКлиентскогоПриложения (ClientApplicationForm)

ПриИзмененииПараметровЭкрана (OnChangeDisplaySettings)

Доступен, начиная с версии 8.3.5.

Синтаксис:
ПриИзмененииПараметровЭкрана()
Описание:

Возникает при изменении информации, собранной в объекте ИнформацияЭкранаКлиента: разрешение, ориентация и т.п.
На мобильной платформе событие возникает только в активной форме. Если форма не активна, то обработчик события сработает после активизации формы, если изменения еще актуальны (например, устройство можно повернуть обратно, и тогда изменение ориентации станет неактуальным).

Доступность:

Тонкий клиент, веб-клиент, мобильный клиент, сервер, толстый клиент, мобильное приложение (клиент), мобильное приложение (сервер), мобильный автономный сервер.

Использование в версии:

Доступен, начиная с версии 8.3.5.

Методическая информация

Практические примеры

Разобрать событие «ПриИзмененииПараметровЭкрана» на собственном элементе

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

Где и как запускать

Клиентский обработчик собственной управляемой формы; подготовка данных отдельно в ПриСозданииНаСервере.

Подготовка

  1. Создайте внешнюю обработку с собственной управляемой формой, запуск — тонкий клиент, если ниже не указан другой клиент.

  2. Добавьте СчетчикСобытий (Число 10.0) и СтатусУрока (Строка 200), выведите оба на форму. Дополнительный блок инициализации поместите в модуль этой же формы.

  3. Основной обработчик назначьте через свойства нужного элемента → События. Параметр Элемент добавляется обработчику события элемента формы; у события самой формы его нет. Не создавайте вторую процедуру с тем же именем.

  4. В свойствах самой формы назначьте ПриИзмененииПараметровЭкрана. На устройстве измените ориентацию, либо параметры разрешения экрана в ОС; простое изменение ширины окна не является этим событием.

&НаКлиенте
Процедура ПриИзмененииПараметровЭкрана()
    СчетчикСобытий = СчетчикСобытий + 1;
    СтатусУрока = "Параметры экрана изменились: " + Строка(СчетчикСобытий);
    Сообщить(СтатусУрока);
КонецПроцедуры
Та же собственная форма: подготовка до интерактивного действия
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    СчетчикСобытий = 0;
    СтатусУрока = "Ожидается действие пользователя";
КонецПроцедуры

Разбор по шагам

  1. Разместите указанный элемент и отдельный инициализатор в правильном модуле.

  2. Назначьте обработчик через свойства события и выполните указанное пользовательское действие.

  3. Посмотрите собственный статус / результат; не путайте событие с похожими соседними событиями.

Как проверить результат

  1. Счётчик увеличивается при реальном изменении параметров экрана, не при произвольном вызове обработчика вручную.

  2. На мобильной платформе событие неактивной формы откладывается до её активизации, если изменение ещё актуально.

Ожидаемый результат

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

На что обратить внимание

  1. Не добавляйте Элемент в события самой формы / модуль команды; у событий элементов формы он является контекстным параметром обработчика.

  2. Разные дополнительные блоки относятся к явно названным модулям; одинаковые процедуры инициализации объединяются, а не дублируются.

  3. Код 1С при сборке справочника не исполнялся; сеть, рабочие записи, печать и внешние компоненты не использовались.

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

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.