Объект Выражения ---------------- Числовые или логические свойства видимых компонентов могут представлять собой либо просто значения (константы) или выражения. Выражения позволяют задать формулы для расчета свойств, чтобы свойства могли изменяться в процессе работы приложения в зависимости от переменных, имеющихся в программе контроллера. **!!!Внимание!!!** С помощью выражений невозможно изменить значения переменных, которые используются в них. Этот объект содержит список выражений. Внешний вид редактора представлен на рисунке. Двойной клик на «Выражение»(1) открывает соответствующую вкладку в окне редактирования (2). .. figure:: image/expression.png :align: center Выражения представлены в виде дерева из двух колонок. В первой колонке находится имя выражения. Во второй колонке расположено само выражение, составленное из переменных, операторов и констант. Для создания выражения необходимо нажать кнопку **Добавить** (3). Двойной клик по названию выражения даст возможность переименовать его. Удаление производится либо кнопкой **Del** на клавиатуре, либо с помощью соответствующей кнопки в главном меню приложения. Выражения можно сгруппировать. Для создания новой группы необходимо нажать кнопку **Добавить группу** (5). Вложенность групп не ограничена. Выражения и группы можно копировать, вырезать и вставлять с помощью соответствующих команд на панели редактирования. Для изменения значения выражения нужно сделать двойной клик ЛКМ на строку или нажать кнопку **Редактирование** (4) в верхней части окна. .. figure:: image/expression2.png :align: center Диалог редактирования выражения Все элементы выражения добавляются с помощью кнопки **Добавить**. При нажатии на нее появляется меню, в котором можно выбрать требуемый для вставки объект. Элемент будет добавлен правее текущего выделенного элемента. Переменная выбирается из списка сетевых переменных программы. Если переменная в программе объявлена сетевой, но отсутствует в этом списке, то необходимо открыть список сетевых переменных из навигатора проекта, кликнув ПКМ по контроллеру и выбрать пункт в контекстном меню **Сетевые переменные Modbus slave…**. Список сетевых переменных будет обновлен и переменная станет доступной для выбора в выражении. Элементы выражения можно перемещать с помощью мыши. Для добавления скобок необходимо выделить группу элементов выражения с помощью ЛКМ, удерживая кнопку **Ctrl** или **Shift** на клавиатуре, и нажать кнопку **Взять в скобки**. Выделенные элементы будут помещены в скобки. В нижней части окна конструктора присутствует статусная строка, в которой указываются ошибки выражения. Сохранить выражение, в котором есть ошибки невозможно. В выражениях поддерживаются следующие операторы: * **+** - сложение * **-** - вычитание * ***** - умножение * **/** - деление * **%** - остаток от деления * **==** - равно * **!=** - не равно * **>** - больше * **<** - меньше * **>=** - больше или равно * **<=** - меньше или равно * **&&** - логическое И * **||** - логическое ИЛИ * **!** - оператор НЕ * **&** - побитовое И * **|** - побитовое ИЛИ * **~** - побитовая инверсия * **^** - исключающее ИЛИ (XOR) * **>>** - сдвиг вправо * **<<** - сдвиг влево