Всплывающее окно маркера карты

<< Click to Display Table of Contents >>

Navigation:  Создание окон для клиента визуализации > Библиотека HMI > Категория Контролы > Карта >

Всплывающее окно маркера карты

Если требуется выводить дополнительную информацию объекта из источника данных во всплывающее окно по клику на маркер или получить координаты клика, то нужно воспользоваться уникальными событиями карты.

Существует два специальных события:

Рассмотрим на примере.

Пусть при клике на маркер, нужно открывать окно, в котором необходимо выводить значения двух параметров, которые относятся к конкретному маркеру. Для этого структура, которая является элементом массива типа параметра, связанного с источником данных, должна иметь эти два поля:

vcplyv_okno_markera

Пусть в нашем примере Counter_1 отвечает за значение счетчика ГВС, а Counter_2 - ХВС.

Далее создаем окно. Если подобное окно будет использоваться в проекте неоднократно, то нужно его создавать в пользовательской библиотеке, а затем добавлять в дерево проекта его экземпляр. Если окно будет уникальным и не потребуется для других проектов, то можно создавать его непосредственно в дереве системы или в дереве объектов.

В окне создаем три параметра, и настраиваем внешний вид и связь между графическими элементами и параметрами окна:

vcplyv_okno_markera_1

Далее нужно в окне, в котором содержится карта, добавить параметр типа структура. Такую структуру создавали для формирования источника данных для карты. Она легла в основу массива структур:

vcplyv_okno_markera_2

Далее выделяем элемент Карта и в панели свойств добавляем событие Клик по маркеру  и в него два действия: Установить параметр  и Открыть окно маркера:

vcplyv_okno_markera_3

Настраиваем событие Установить параметр:

hKesMKZv1uZPowAFXkJlqsW6xxL2LostoBMbyS1awl9xi7l7GN2IwMrkXrZokgcZNc_3SlBouSFMLWZ8wcW_f4Te2TBfnkzs1ozhCakQ0Y3CFsRxT2AvqDkHXhOBi1teuXgNMusq

Затем настраиваем событие Открыть окно маркера:

Перетаскиваем окно или экземпляр библиотечного окна из дерева объектов или из дерева системы, которое должно открываться при клике на маркер:

vcplyv_okno_markera_4

Затем добавляем параметры окна:

vcplyv_okno_markera_5

Далее устанавливаем связь между параметрами окна и полями структуры:

_Ev2EbUw0kwsiaCeTr4yhUx_nX-7gRpZdQlegMMTGoieLlWfaPafd2kHJwNt5EOm9H1i_b6nixI3BG3Poht6RHyVmOvEkjBedtKYlOPErzX-Sblp_ynGbsK0GayBf7SRwPInrR3N

Т.е. сначала мы передаем данные от маркера в параметр окна типа Структура через действие Установить параметр, а затем из параметра этого окна во всплывающее окно. Таким образом получим, что в режиме исполнения если кликнуть по маркеру, то появится окно, в котором будут зафиксированы значения параметров в момент клика:

3_i9cJA1JHjUO9w7SHnUfUAh7rdy5Jb2xyxf8Y9EqsWmA25jlfEuk8GhDj3tMcEkI6Wkf-8hlmab76MA0s-InndSv14oFPQRT8TN5X4YGPSau6o96a-ipeieNeOsDdVnEgCwY88B

Если необходимо, чтобы данные изменялись в окне после клика, то необходимо включить отображение полного дерева проекта. Раскрыть в дереве содержимое элемента Карта, и в группу Стиль маркера добавить параметры, с такими же именами, как и параметры окна, которое должно открыться. В данном случае нужны параметры с именами: ГВС, ХВС и Имя:

vcplyv_okno_markera_6

Важно! Если имена параметров, созданных в группе Стиль маркера будут отличаться от имен параметров открываемого окна, то значение изменяться в открытом окне маркера в клиенте визуализации не будут.

Затем в редакторе карты на вкладке стиль маркера, нужно определить зависимость между параметрами и полями источника данных:

Io4F5WZ-XWSuCtPMzpIrQ-VYU7fCFlrdlxO396Cz2di8eTn7kgoWZ3CDG3-vxSGVc1SDw1nxK3SYINX0u-Kus87qDUjrVT5pXeYyTbvLbCv_aA32_qXjtT5KRxxEBPYJFKW7lQeM

В результате, если окно маркера будет открыто. и если изменится поле структуры элемента массива источника данных, то это изменение отобразится в клиенте визуализации.