глобальные переменные/константы в
WinCC
иван жуков;
28.4.03
В Си-actions меняю цвета элементов на экране. Чтобы легко изменить
цвет всех элементов, завел макросы в своем файле определений
(defines) который включаю в apdefap.h Предполагалось, что если я
только в этом файле изменю определения, то при выполнении скриптов
цвета будут заменены на новые. Конечно, этого не произошло: нужно
перекомпилировать все скрипты на всех элементах. Так вот: можно ли
эти цвета задавать глобально не defin'ами, а глобальными
переменными или константами, так чтобы не требовалось
перекомпиляции всех скриптов?
Re: глобальные переменные/константы в
WinCC
Лев
Шерешевский ; 28.4.03
С событием открытия стартовой экранной формы можно связать
С-action, в котором создаются и инициализируются обычные переменные
С, описывающие нужные цвета. Во всех остальных скриптах достаточно
описать те же переменные с атрибутом extern.
Альтернативный способ - хранить цвета в тегах (работать будет
медленнее).
Re: глобальные переменные/константы в
WinCC
иван жуков;
29.4.03
> С событием открытия стартовой
> экранной формы можно связать С-
> action, в котором создаются и
> инициализируются обычные переменные
> С, описывающие нужные цвета. Во всех
> остальных скриптах достаточно описать
> те же переменные с атрибутом extern.
Это то что надо. Только где привязка таких actions производится?
Вроде бы только по изменению тегов и по таймеру они запускаются.
Или там какой-то специальный тег есть, который на старте
изменяется? (Я конечно понимаю, что где-то в документации есть
пояснения, но очень долго искать придется...)
Re: глобальные переменные/константы в
WinCC
иван жуков;
29.4.03
вот я нашел событие Open Picture, оно определяется для каждого
экрана. Получается переменные/константы надо в скрипте,
прикрепленном к событию, определить? А не будут эти определения
между собой конфликтовать?
Re: глобальные переменные/константы в
WinCC
Лев
Шерешевский; 29.4.03
Да, надо использовать событие OpenPicture и в связанном с ним
скрипте определить и инициализировать переменные (без модификатора
extern!). Как правило, в любом проекте есть стартовая экранная
форма, которая открывается ОДНАЖДЫ в самом начале работы системы.
Если в Вашем случае это не так, можно придумать еще какое-либо
ухищрение.
Re: глобальные переменные/константы в
WinCC
иван жуков;
29.4.03
вот я нашел событие Open Picture, оно определяется для каждого
экрана. Получается переменные/константы надо в скрипте,
прикрепленном к событию, определить? А не будут эти определения
между собой конфликтовать?