И, повторимся, мы хотим независимого переключения фреймов для клиентов.
Ну, а давайте попробуем так? Пример с тремя экранами в фрейме, независимое для клиентов переключение с помощью кнопок, определение активного экрана фрейма в программе.
1. Пишем такой вот код:
001.png
Здесь 10 - это максимальное число клиентов. Программа проходится по всем, считывая индекс открытого в фрейме экрана, тем самым определяя его название (порядок экранов определяется в конфигурации фрейма). Потом в программе мы можем проходиться по STRING массиву, и если хотя бы одно его значение совпадает с именем нужного нам экрана, то делаем, что хотим.
2. Экран визуализации будет выглядеть так:
002.png
3. К фрейму мы привязываем вот такую переменную:
003.png
4. А кнопки переключения будут выполнять такой код (остальные две, соответственно, будут присваивать 1 и 2):
004.png
5. Ну и к прямоугольнику привяжем уже понятно что:
005.png
Прикладываю архив для 3.5 SP7 Patch3. Скачать эту версию CODESYS можно здесь:
http://cleverhouse.club/scope/bms/re...7-patch-3.html
SP5 Patch5 у меня, к сожалению, нет.