Условный оператор |
Конструкция <условный оператор> используется в формах, управляемых из прикладной программы.
Условный оператор служит для выбора ветви формы из двух альтернатив.
<условный оператор> ::= .if <идентификатор> <тело> [.else <тело>] .end
Конструкция условного оператора начинается ключевым словом .if и оканчивается ключевым словом .end.
Условный оператор обязательно именуется. Идентификатор, стоящий за служебным словом .if, относится ко всему условному оператору в целом.
В теле условного оператора используется та же конструкция <тело>, что и в теле формы.
Выбор альтернативы зависит от события, присланного прикладной программой в условный оператор.
Для управления условным оператором прикладная программа использует два стандартных события:
feTrue - выбирается ветвь формы, следующая за служебным словом .if условного оператора;
feFalse - выбирается ветвь формы, следующая за служебным словом .else условного оператора.
По умолчанию, если события нет, считается, что прислано событие feTrue.
Стандартные события для управления условным оператором формируются на основе сообщений, поступающих из прикладной программы.
Ветвь .else условного оператора может отсутствовать. Если в подобный условный оператор прикладная программа присылает событие feFalse, это равносильно пропуску всего условного оператора.
Количество, взаимное расположение, имена и структура условных операторов в форме-прототипе и в присоединенных формах должны совпадать.
Пример
.form акт .if лето <тело> .else ................. !тело .end .endform