Назначение


Компонент позволяет разместить на форме интерактивную географическую карту Google Maps, с возможностью нанесения маркеров. Вы можете нанести на карту один или несколько маркеров, затем сохранить их местоположение в базу данных. Данный компонент присваивается к двум полям базы данных через свойства TableNameFieldLatitude и FieldLongitude. Используемые поля БД должны иметь тип "ВЕЩЕСТВ. ЧИСЛО".


Нанесение маркера на карту выполняется через контекстное меню компонента (правый клик мыши) либо используя форму, на которой можно разместить компоненты, чтобы присвоить дополнительные данные для маркера (свойство FormMarker).


Свойства компонента

 Свойство

 Описание

 TableName

 Определяет, к какой таблице базы данных принадлежит данный компонент

 FieldLatitude

 Определяет, к какому полю таблицы базы данных принадлежит географическая широта (Latitude) размещенного на карте маркера

 FieldLongitude

 Определяет, к какому полю таблицы базы данных принадлежит географическая долгота (Longitude) размещенного на карте маркера

 Name

 Уникальное имя компонента на форме

 Left

 X координата компонента на форме

 Top

 Y координата компонента на форме

 Width

 Ширина компонента

 Height

 Высота компонента

 TabOrder

 Определяет порядковый номер компонента в очереди обхода фокусом ввода компонентов, находящихся на форме, при нажатии клавиши Tab

 TabStop

 Определяет, будет ли компонент получать фокус, при нажатии клавиши Tab на форме

 Visible

 Определяет видимость компонента

 Anchors

 Задает поведение компонента при изменении размеров формы. Подробней.





Дополнительные свойства (Additional, редко используемые)

 Свойство

 Описание

 APIKey

 Для полноценного использования компонента, необходимо получить API ключ от сервиса Google

 Constraints

 Свойство позволяет задать максимальную и минимальную ширину и высоту компонента. Имеет смысл при использовании свойства Anchors.

 Enabled

 Определяет доступность компонента для пользователя

 DefaultLatitude

 Устанавливает первоначальную позицию карты по широте

 DefaultLongitude

 Устанавливает первоначальную позицию карты по долготе

 DefaultToCurrentLocation

 Позволяет автоматически определить местоположение пользователя и устанавливать ее в качестве первоначальной позиции

 DisableDoubleClickZoom

 Позволяет заблокировать возможность приближения карты при двойном клике мыши

 DisableMenu

 Позволяет заблокировать контекстное меню

 DisablePOI

 Определяет, будут ли показаны на карте отметки с достопримечательностями и другими объектами

 Draggable

 Определяет, будет ли возможность перемещать карту

 EnableKeyboard

 Определяет, будет ли возможно управлять картой с помощью клавиатуры

 FormMarker

 Позволяет выбрать форму при создании/редактирования маркера, т.о. вы можете указать дополнительные сведения для маркера

 Language

 Позволяет выбрать язык интерфейса на карте

 MapType

 Позволяет выбрать тип карты (дорожная, спутниковая, гибридная, топографическая)

 MarkerIcon

 Позволяет указать графический файл, который будет использоваться в качестве маркеров. Подробней.

 MarkersDraggable

 Позволяет разрешить перемещать мышкой маркеры на карте

 MarkerInfoHTML

 Всплывающая подсказка, которая будет показана при клике по маркеру. Поддерживается HTML и вставка данных. Подробней.

 ScrollWheel

 Определяет, будет ли возможность управлять масштабом карты с помощью колесика мыши

 ShowBicycling

 Позволяет показать на карте велосипедные маршруты (если информация присутствует для выбранной местности)

 ShowTraffic

 Позволяет показать на карте информацию о загруженности автомобильных дорог (доступно не для всех городов)

 ZoomMap

 Определяет первоначальный масштаб карты (значения 1-21)






Подробней о нанесении маркеров на карту


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

Чтобы сохранить местоположение маркера на карте, необходимо использовать одновременно два поля в базе данных. Что совершено естественно, т.к. географические координаты состоят из двух частей, это Широта (Latitude) и Долгота (Longitude).

Таким образом, чтобы иметь возможность наносить маркер на карту и сохранять его местоположение в базу данных, в таблице БД вам необходимо создать два поля с типом "ВЕЩЕСТВ. ЧИСЛО". Почему именно вещественное число? Координаты представлены в виде градусов, пример: 55,755831°, 37,617673°, что соответствует этому типу данных.

Вы можете нанести на карту как один маркер, так и несколько. Подробней об этом можете прочитать далее.





Нанесение на карту одного маркера


В данном случае использование компонента ничем не отличается от других. Просто укажите какой таблице БД и каким полям БД принадлежит данная карта используя свойства компонента TableNameFieldLatitude и FieldLongitude. Затем в настройках кнопки "Сохранить запись" добавьте данный компонент в список.



Нанесение на карту нескольких маркеров


Чтобы иметь возможность нанести несколько маркеров на карту и сохранить их местоположение, вам необходимо создать отдельную таблицу БД, где будут хранится записи о данных маркерах. Т.е. данные маркеры будут дочерними записями и в данной таблице у вас должен быть создан внешний ключ на родительскую таблицу.

Нанесение на карту нескольких маркеров можно сравнить с использованием компонента "Таблица" для работы с дочерними записями, т.е. в нашем случае маркеры и будут являться дочерними записями.

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