5.4.3.3.2. НАСТРОЙКА ЦВЕТОВЫХ СХЕМ МНЕМОСИМВОЛОВ

Чтобы изменять цветовую схему мнемосимволов, необходимо изменять значения цвета в глобальном типе цветовой схемы мнемосимвола:
 
1. Откройте мнемосхему проекта в Astra.HMI. Кликните правой кнопкой мыши по мнемосхеме в поле структура объекта и из контекстного меню выберите команду создать.
 
2. В Мастере создания выберите из выпадающего списка Тип элемента – Экземпляр типа и выберите базовый тип элемента "Команда" (Встроенные → Команда) и нажмите кнопку "Создать":
 
3. Добавленный элемент отобразится в области Структура объекта. Выделите элемент и нажмите клавишу F2, чтобы задать имя ChangeColorScheme.
 
4. Перейдите на вкладку "События" и нажмите правой кнопкой мыши по событию Invoked. Из контекстного меню выберите команду "Добавить обработчик".
 
 
5. В выпадающем списке обработчика выберите действие Выполнить код и нажмите кнопку Редактировать.
 
6. В открывшемся окне впишите следующий код:
//Меняем цвет отображения состояния "Нет связи" на желтый у всех мнемосимволов отнаследованных от FB_MTR
 
unit.PsTechMT.CS.CS_DEFAULT_MTR.COLOR_UNKNOWN = 0xffffff00;
 
Данный код изменит цвет состояния "Нет связи" для ВСЕХ мнемосимволов отнаследованных от FB_MTR
В пространстве имен Цветовой схемы доступны следующие свойства цветов для изменения состояний и режимов мнемосимволов:
 
Свойство
Описание
COLOR_WORK
Цвет состояния Работа
COLOR_START
Цвет состояния Пуск
COLOR_ACCEL
Цвет состояния Разгон
COLOR_MOVE
Цвет состояния Движение
COLOR_STOP
Цвет состояния Останов
COLOR_ALARM
Цвет состояния Авария
COLOR_BLOCK
Цвет состояния Блокировка
COLOR_UNKNOWN
Цвет состояния Нет связи
COLOR_OFF
Цвет состояния Остановлен
COLOR_READY
Цвет состояния Готов
COLOR_REMOTE
Цвет режима Дистанционный (Применяется только для БУК)
COLOR_LOCAL
Цвет режима Местный (Применяется только для БУК)
COLOR_REPAIR
Цвет режима ремонтный (Применяется только для БУК)
 
Нажмите кнопку ОК. Созданную команду теперь необходимо вызвать, это можно сделать при каком либо событии, например открытие мнемосхемы или нажатие кнопки. Добавим на мнемосхему элемент кнопка, для этого:
7. Из вкладки общие элементы перетащите на свободное поле мнемосхемы элемент кнопка из вкладки Визуальные.
 
 
8. Выделите кнопку в поле Структура объекта и задайте имя btnChangeColorScheme при помощи клавиши F2.
 
 
9. Перейдите в свойства созданной кнопки и задайте значение свойству Текст.
 
 
10. Перейдите на вкладку События и добавьте обработчик на событие MouseClick (Клик мыши).
 
 
11. В выпадающем списке выберите действие Выполнить код и нажмите кнопку Редактировать:
 
 
12. В открывшемся окне впишите следующий код:
//По щелчку мыши на кнопке вызывать команду смены цвета в цветовой схеме
ChangeColorScheme.Invoke();
 
 
 
Нажмите кнопку ОК.  Теперь можно проверить получившуюся конструкцию. Запустим мнемосхему с добавленной кнопкой в режиме Исполнения клавишей F9.
 
 
Как можно заметить цвет состояния двигателей при отсутствии связи по умолчанию белый, теперь нажмем кнопку "Поменять цвет мнемосимволов".
 
 
Цвет состояния "Нет связи" изменился на желтый, который был указан в команде ChangeColorScheme.
 
Аналогичным образом можно изменять цветовую схему для мнемосимволов отнаследованных от FB_BUK и FB_CON.
 
Подробная реализация данного функционала представлена в демо проекте PsTechMT_Example.