IVZMapChartShape.Selected

Синтаксис

Selected: Boolean;

Selected: boolean;

Описание

Свойство Selected определяет, будет ли отмечена область карты.

Комментарии

Доступные значения:

Пример Fore

Для выполнения примера предполагается наличие в репозитории экспресс-отчета с идентификатором EXPRESS. В экспресс-отчете должна содержаться карта со слоем «Regions».

Добавьте ссылки на системные сборки: Drawing,  Express, Metabase и Visualizators.

Sub UserProc;
Var
    Metabase: IMetabase;
    EaxAnalyzer: IEaxAnalyzer;
    EMap: IVZMapChart;
    MapShape: IVZMapChartShape;
    Layer: IVZMapChartLayer;
    ShapeId: String;
    Color: IGxColor;
Begin
    // Получим репозиторий
    Metabase := MetabaseClass.Active;
    // Получим экспресс-отчёт
    EaxAnalyzer := Metabase.ItemById("EXPRESS").Edit As IEaxAnalyzer;
    // Получим карту экспресс-отчета в качестве визуализатора
    EMap := EaxAnalyzer.MapChart.MapChart;
    // Получим слой из карты
    Layer := EMap.RootLayer.LayerById("Regions");
        //Выберем область
    ShapeId := Layer.Shapes.Item(20).ShapeId;
    MapShape := Layer.ShapeById(ShapeId);
    // Отметим область на карте
    MapShape.Selected := True;
    // Выделим область на карте, изменив цвет границы
    Color := New GxColor.CreateRGB(85157170);
    MapShape.Border := New GxPen.CreateSolid(Color, 4);
    
// Зададим фон области слоя карты без заливки
    MapShape.IsStrokedShape := True;
    // Сохраним экспресс-отчет
    (EaxAnalyzer As IMetabaseObject).Save;
End Sub UserProc;

Imports Prognoz.Platform.Interop.Drawing;
Imports Prognoz.Platform.Interop.Express;
Imports Prognoz.Platform.Interop.Visualizators;

Public Shared Sub Main(Params: StartParams);
Var
    Metabase: IMetabase;
    EaxAnalyzer: IEaxAnalyzer;
    EMap: IVZMapChart;
    MapShape: IVZMapChartShape;
    Layer: IVZMapChartLayer;
    ShapeId: String;
    Color: GxColor;
    Pen: GxPen;
Begin
    // Получим репозиторий
    Metabase := Params.Metabase;
    // Получим экспресс-отчёт
    EaxAnalyzer := Metabase.ItemById["EXPRESS"].Edit() As IEaxAnalyzer;
    // Получим карту экспресс-отчета в качестве визуализатора
    EMap := EaxAnalyzer.MapChart.MapChart;
    // Получим слой из карты
    Layer := EMap.RootLayer.LayerById("Regions");
    // Выберем область
    ShapeId := Layer.Shapes.Item[20].ShapeId;
    MapShape := Layer.ShapeById(ShapeId);
    // Отметим область на карте
    MapShape.Selected := True;
    // Выделим область на карте, изменив цвет границы
    Color := New GxColorClass_2.Create();
    Color.CreateRGB(85157170);
    Pen := New GxPenClass.Create();
    Pen.CreateSolid(Color, 4);
    MapShape.Border := Pen;
    // Зададим фон области слоя карты без заливки
    MapShape.IsStrokedShape := True;
    // Сохраним экспресс-отчет
    (EaxAnalyzer As IMetabaseObject).Save();
End Sub

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

См. также:

IVZMapChartShape