книги / SCADA-╤Б╨╕╤Б╤В╨╡╨╝╤Л ╨║╨░╨║ ╨╕╨╜╤Б╤В╤А╤Г╨╝╨╡╨╜╤В ╨┐╤А╨╛╨╡╨║╤В╨╕╤А╨╛╨▓╨░╨╜╨╕╤П ╨Р╨б╨г ╨в╨Я
..pdfблокируются вложенные ссылки. На отображаемый экран не выводятся ссылки на другие экраны.
3.5.9. Свободные формы отображения
Можно создавать формы отображения, не имеющие координат и не выводимые на экранах. Эти формы отображения используют ся для управления с помощью заданного канала переходами по экранам, видимостью других форм отображения, привязкой форм отображения к другим каналам, а также для создания меню поль зовательских команд.
Свободные формы, управляющие переходами по экранам, соз даются общим списком по графической базе. Формы, управляю щие видимостью и привязкой других форм, всегда связываются с конкретным экраном графической базы.
Форма отображения «Управление состоянием форм отображе ния» позволяет управлять видимостью других форм отображения на текущем экране по значению канала. При его равенстве нулю управляемые формы отображения видимы, в противном случае - невидимы.
Форма отображения «Управление переходом по экранам» по зволяет управлять переходами между экранами по значению за данного канала. Указанные при создании формы экраны образуют список, значение управляющего канала соответствует номеру эк рана в этом списке.
Форма отображения «Перепривязка форм отображения» позво ляет перепривязать другую форму отображения к каналам в зави симости от значения управляющего канала. Форма связана с экра ном, при редактировании которого была создана. Каналы, на которые переключается управляемая форма отображения, образу ют список. Значение управляющего канала (это канал, с которым связана форма перепривязки) указывает номер строки в этом спи ске, определяя таким образом имя и атрибут канала - источника данных для управляемой формы отображения.
При перепривязке форм отображения с посылками каналы по сылок перепривязываются при условии совпадения базового кана ла и канала для посылки.
Форма отображения «Пользовательское меню» позволяет до бавить пользовательские команды в раздел «Команды» главного меню редактора представления данных и МРВ.
Раздел «Команды» доступен только в режиме эмуляции.
131
Форма отображения «Ползунок» имеет две привязки к каналам. Первая (основная) используется для разметки шкалы и обозначения диапазонов изменения. Вторая привязка может совпадать с первой, а может от нее отличаться. Она связана с положением «Ползунка».
Форма отображения «Ползунок» может вообще не использо вать значения канала. В этом случае он будет статическим элемен том рисования, применяемым для рисования шкал.
Вдоль шкалы может быть выведена полоса для обозначения цве том диапазонов, соответствующих различным значениям атрибута интервала канала основной привязки. Для этого в разделе «Диапазо ны» надо установить флаг использования этой функции, задать ши рину полосы в пикселях и указать два цвета, обозначающих выход за предупредительные и аварийные границы канала (см. рис. 3.20). Средняя часть полосы закрашивается цветом разметки.
Настройка «Уровни разметки» определяет число штрихов и их вложенность, причем параметр «Количество разбивок» второго уровня определяет число делений в одном делении первого уров ня, а для третьего - во втором. Например, на первом уровне можно выводить дециметры, на втором - сантиметры, а на третьем - мил лиметры.
Если в разделах «Мин. отметка» и «Макс, отметка» установлен флаг «Использовать привязку», то в качестве границ шкалы будут взяты указанные атрибуты канала, причем их значение будет от слеживаться в реальном времени. Если для этого флага установле но значение FALSE, то в качестве границ шкалы будут приняты заданные константы.
3.5.11. Использование ActiveX-компонентов
Использование ActiveX-компонентов позволяет: реализовать нестандартные графические элементы; подключить пользователь ские модули, реализующие обработку данных и вычисления на клиентской машине; применять готовые ActiveX-компоненты.
Чтобы использовать ActiveX-компоненты, предусмотрена спе циальная форма отображения. Она выбирается нажатием ЛК на пиктограмму ЭД| панели форм отображения.
При этом на экране появляется диалог со списком зарегистри рованных в системе ActiveX-компонентов. После выбора требуе мого компонента следует перевести курсор мыши в рабочую об
134
Интерфейс ItmChBrowser не может быть создан явным образом (вызовом CoCreatelnstance), а передается методом SetChanBrowser интерфейса IChlnfo. Дело в том, что компонент и другие формы отображения должны иметь один источник информации о базе ка налов, которая может располагаться и на другом компьютере. По этому в файле tmxaux.idl есть только спецификация интерфейса ItmChBrowser и нет класса, его реализующего.
Для изменения значений одного или нескольких каналов одно временно служит интерфейс ItmDataLink. Он предоставляется кон тейнером аналогично ItmChBrowser и имеет всего один метод, ис пользуемый именно для этой функции. Интерфейс ItmGrChBrowser, специфицированный в том же файле, применяется для внутренних нужд редактора представления данных.
Структуры данных, используемых методами упомянутых ин терфейсов, описаны и подробно прокомментированы в файле rttypes.idl.
Если компонент готов к работе с Трейс Моуд через специали зированные интерфейсы, то его можно зарегистрировать в катего рии TraceMode controls, что позволит использовать фильтр пр» выборе компонента для вставки.
Редактор представления данных как ActiveX-контейнер пред ставляет следующие свойства окружения: BackColor, ForeColor, UserMode, Palette, LocalelD.
Переменная UserMode устанавливается в состояние TRUE, BackColor имеет значение цвета фона, a ForeColor - черный цвет. Все ActiveX-компоненты уведомляются о его изменении.
При вставке и последующих вызовах экрана, содержащего данный компонент, ActiveX активизируется в режиме OLEIVERB_SHOW. При исчезновении с экрана компонент деак тивируется.
В поддиректории ТМХ находится набор файлов для разработ чика ActiveX-компонента. В него входят следующие файлы:
tmxaux.idl - спецификация интерфейсов IChlnfo, ItmChBrowser; rttypes.idl - ряд вспомогательных структур данных;
ChBase.tlb - библиотека типов, содержащая страницы свойств tmChanPage и TmxAmbPage, а также файлы примера.
Трейс Моуд предоставляет дополнительный набор дуальных интерфейсов для ActiveX-компонентов для разработки в инстру
137