<< Click to Display Table of Contents >> Сложный вызов всплывающего окна со скриптами |
![]() ![]() ![]() |
Например, у нас есть сложный групповой объект:
Давайте назовем его - FBMotorAOVentil. Он состоит из нескольких примитивных объектов - Прямоугольник, Эллипс, Полигон, Изображение, Текст/ПолеВвода и поверх этих объектов мы разместили прозрачную Кнопку - CallPopup:
Как сгруппировать объект вы можете узнать в главе - Пример: Как создать новый графический объект. В нашем текущем примере этот объект привязан к нескольким тегам:
Чтобы упростить масштабирование этого проекта и иметь возможность быстрее скопировать эту группу тегов для следующего аналогичного объекта, мы связали имя тегов с группой, используя ключевое слово {group}. Пример:
Мы хотели бы вызвать всплывающий экран, щелкнув этот групповой объект (щелкнув по прозрачное кнопке - CallPopup если быть точнее) и отображать все свойства в соответствующих полях. Наше всплывающее окно выглядит так:
Мы также создаем теги для этого всплывающего окна:
Чтобы иметь возможность отправлять некоторую информацию из группового объекта во всплывающее окно, мы можем создать определяемые пользователем свойства:
Основное определяемое пользователем свойство: objectname. В нашем случае оно равно VE01. Для других объектов вы можете изменить только это свойство, чтобы привязать его к другой группе тегов. Теперь, мы должны вызывать всплывающее окно и отправлять ему наши пользовательские свойства. Для этого включите свойство Контроль:
В поле Команда и арг. мы помещаем наши определенные пользователем теги в набор глобальных аргументов. Теперь мы можем создать первый скрипт, который будет вызываться при открытии нашего всплывающего окна:
Текст скрипта приведен ниже:
Следующий скрипт, который мы создаем, чтобы уловить изменения во всплывающих тегах и установить значение тега группового объекта, и наоборот, чтобы уловить изменения значения тега группового объекта и установить значение всплывающих тегов:
Текст срипта приведен ниже:
Теперь добавьте этот скрипт в наше всплывающее окно:
А теперь давайте проверим, как это работает:
Вы можете скачать проект из примера здесь.