TMappl.HighlightObjectsX

Модуль: Mappl
Класс: TMappl

Подсветить совокупность объектов карты по заданному значению некоторого поля таблицы слоя

Объявление

function HighlightObjectsX(aMapObjects: OleVariant; Count: integer;
	 aShowObjectMode: TShowObjectsMode = somSaveScale;
	 aHwnd: integer = 0): boolean;

Параметры

aMapObjects
массив подсвечиваемых объектов
Count
количество подсвечиваемых объектов в массиве
aShowObjectMode
режим позиционирования карты при подсвечивании объектов
aHwnd
дискриптор Handle окна, вызывающего функцию (по умолчанию 0)

Возвращает

false, если ошибка, иначе true

Описание

Объекты подсвечиваются таким же образом, как и найденные на карте объекты. Объекты могут принадлежать как одному и тому же слою, так и разным слоям. Дескриптор Hwnd используется для перехвата события отжатия клавиши мыши элемента управления и вызова метода RepaintMap для сброса подсветки объекта. Если значение дескриптора равно 0, то вызов метода RepaintMap для сброса подсветки объекта необходимо осуществить в приложении. По умолчанию значение дескриптора равно 0. Рекомендуется вызывать метод из события обработки нажатия мыши, а в событии обработки отжатия мыши вызывать метод RepaintMap

Пример

      var
       AMO: TArrayMapObjects;
      begin
        AMOOle:=VarArrayCreate([0,1],VarByte);
        VarArrayRedim(AMOOle,SizeOf(TMapObject)*2);
        pAMO:=VarArrayLock(AMOOle);
        pAMO.lCode:=28;
        pAMO.oIndex:=26;
        inc(pAMO);
        pAMO.lCode:=50;
        pAMO.oIndex:=475;
        VarArrayUnLock(AMOOle);
        Mappl.HighlightObjectsX(AMOOle,2);
      end;