пятница, 18 ноября 2016 г.

Режим листания окон

В одной из предыдущих статей мы рассматривали создание тулбара – специального плавающего окна, для навигации по окнам. Сегодня мы рассмотрим режим листания окон – в данном режиме происходит открытие нового окна без элементов управления (рамки), поверх другого окна, которое при этом закрывается. Данный режим удобно использовать, совместно с тулбаром, для быстрого просмотра окон различных объектов – например просмотреть параметры различных агрегатов.

Воспользуемся проектом, рассмотренным в предыдущей статье. Напомним – в данном проекте, мы с помощью плавающего тулбара выполняли открытие мнемосхем, а кнопки индицировали открытое окно.
Немного модернизируем наш проект – создадим для листания специальный тип окна, а затем создадим его у всех объектов аппарата.

Выделим Система Окна, добавим новое окно назовем Для листания, тип окна поставим – Окно.

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

Теперь, нужно активизировать режим листания – по умолчанию он выключен. Для его активизации, нужно выбрать Компьютер Режим исполненияНастройки и установить галочку «Закрывать сверху при открытии нового окна».

Теперь создадим у аппаратов окно нового типа, а мнемосхему удалим.
У окна сделаем выделяющийся фон и добавим текст с названием мнемосхемы.

Аналогично проделаем для остальных аппаратов, а у тулбара исправим привязку к документу кнопок открытия – вместо мнемосхемы, привяжем их к окну листания.
Осталось немного скорректировать скрипт – он был предназначен для работы с мнемосхемами, а у нас теперь отслеживается «Новое окно». Исправим строчку:
if (attribute.DocumentInfo.Handle != 0 && callType == MasterSCADA.Interfaces.ECallType.ctDocument )
на:
if (attribute.DocumentInfo.Handle != 0 && callType == MasterSCADA.Interfaces.ECallType.ctNewWindow )
Теперь будет отслеживаться состояние окон.
Проверим работу в режиме исполнения – запустим проект и откроем окно из тулбара.

Откроем окно второго аппарата.

Листание работает – окно снизу закрывается.
Такой режим очень удобно использовать для быстрого просмотра каких-либо параметров аппаратов. На такие окна также можно размещать контролы трендов, и просматривать ход процесса различных узлов.
При необходимости, можно ускорить загрузку окон (это особенно актуально если на окне расположен график). Для этого на уровне компьютера можно включить настройки – Загрузить все при старте и Не выгружать из памяти при закрытии.

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

Комментариев нет:

Отправить комментарий

Поделиться