Перейти к содержанию

Switch

Блок switch

Switch (Переключатель) - используется для выбора одного из нескольких путей выполнения программы, в зависимости от текущих условий.

Свойства

Входной аргумент Тип аргумента Тип переменной Описание
Expression Variable, Constant, Expression Int32, Double Проверяемое выражение (переменная)

По умолчанию, имеет 3 стандартных выхода: ОК, Default и Error. Программа будет следовать ветке Default, если ни одно из условий не выполнено. Кроме того, выполнение также будет происходить по этому пути, если не добавлен ни один Case.

но количество выходов может быть изменено.

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

Блок switch2

После этого в окне появится дополнительное поле, для настройки добавленного случае. Можно добавить несколько кейсов.

Блок switch3

Тип проверяемого значения в поле Case будет зависеть от переменной в поле Expression.

Пример

Рассмотрим работу блока Switch на примере.

Блок switch4

Создадим переменную value1 типа Double с начальным значением равным 1.

Блок switch5

В блоке присваивания, будем прибавлять единицу к текущему значению переменной. Для этого составим следующий Expression:

value1+1

Блок switch6

Теперь настроим блок Switch. В качестве входного аргумента будем использовать нашу переменную value1 и добавим два кейса на проверку. Для этого необходимо нажать на кнопку "Добавить" и выбрать "Сase" в выпадающем списке.

Первый кейс сработает, если наша переменная станет равной 2, а второй - если переменная станет равной 3.

Блок switch7

Проведём связь от первого кейса (value1 = 2) до блока Delay. Установим задержку в этом блоке на 3 секунды, а после вернёмся по связям к блоку присваивания.

Блок switch8

Для второго кейса (value1 = 3) проведём связь к блоку сообщения, выведем полученное значение во всплывающем окне и закончим программу.

Блок switch9

Назначим текущую программу главной в проекте и запустим его.

Блок switch10

Следить за ходом выполнения программы можно на панели «Контекст». Сначала, значение переменной value1 становится равным 2 и происходит задержка в 3 секунды. Далее, значение value1 увеличивается в блоке SetVariable и блок Switch направляет выполнение программы на вторую ветку, на блок Message.