<< Click to Display Table of Contents >> Navigation: Создание окон для клиента визуализации > Библиотека HMI > Категория Контролы > Карта > Всплывающее окно маркера карты |
Если требуется выводить дополнительную информацию объекта из источника данных во всплывающее окно по клику на маркер или получить координаты клика, то нужно воспользоваться уникальными событиями карты.
Существует два специальных события:
Рассмотрим на примере.
Пусть при клике на маркер, нужно открывать окно, в котором необходимо выводить значения двух параметров, которые относятся к конкретному маркеру. Для этого структура, которая является элементом массива типа параметра, связанного с источником данных, должна иметь эти два поля:
Пусть в нашем примере Counter_1 отвечает за значение счетчика ГВС, а Counter_2 - ХВС.
Далее создаем окно. Если подобное окно будет использоваться в проекте неоднократно, то нужно его создавать в пользовательской библиотеке, а затем добавлять в дерево проекта его экземпляр. Если окно будет уникальным и не потребуется для других проектов, то можно создавать его непосредственно в дереве системы или в дереве объектов.
В окне создаем три параметра, и настраиваем внешний вид и связь между графическими элементами и параметрами окна:
Далее нужно в окне, в котором содержится карта, добавить параметр типа структура. Такую структуру создавали для формирования источника данных для карты. Она легла в основу массива структур:
Далее выделяем элемент Карта и в панели свойств добавляем событие Клик по маркеру и в него два действия: Установить параметр и Открыть окно маркера:
Настраиваем событие Установить параметр:
Затем настраиваем событие Открыть окно маркера:
Перетаскиваем окно или экземпляр библиотечного окна из дерева объектов или из дерева системы, которое должно открываться при клике на маркер:
Затем добавляем параметры окна:
Далее устанавливаем связь между параметрами окна и полями структуры:
Т.е. сначала мы передаем данные от маркера в параметр окна типа Структура через действие Установить параметр, а затем из параметра этого окна во всплывающее окно. Таким образом получим, что в режиме исполнения если кликнуть по маркеру, то появится окно, в котором будут зафиксированы значения параметров в момент клика:
Если необходимо, чтобы данные изменялись в окне после клика, то необходимо включить отображение полного дерева проекта. Раскрыть в дереве содержимое элемента Карта, и в группу Стиль маркера добавить параметры, с такими же именами, как и параметры окна, которое должно открыться. В данном случае нужны параметры с именами: ГВС, ХВС и Имя:
Важно! Если имена параметров, созданных в группе Стиль маркера будут отличаться от имен параметров открываемого окна, то значение изменяться в открытом окне маркера в клиенте визуализации не будут.
Затем в редакторе карты на вкладке стиль маркера, нужно определить зависимость между параметрами и полями источника данных:
В результате, если окно маркера будет открыто. и если изменится поле структуры элемента массива источника данных, то это изменение отобразится в клиенте визуализации.