IMapTopobaseShape.Text

Синтаксис Fore

Text: String;

Синтаксис Fore

Text: string;

Описание

Свойство Text определяет подпись области.

Комментарии

Для вывода значения области в качестве подписи используйте адаптер данных:

  1. В описании адаптера данных добавьте поле для работы с показателями карты типа IMapAreaVisual, например:

Public visual: IMapAreaVisual;

  1. В процедуре работы с подписью области карты задайте значение данного поля.

  2. Задайте адаптер данных для показателей карты.

  3. Задайте подпись области с помощью адаптера данных.

Например:

Sub UserProc;
Var
    M: IMap;
    Layer: IMapLayer;
    Shape: IMapTopobaseShape;
    da: VisualDataAdapter;
Begin
    M := UiMap1.Map;
    Layer := M.Layers.FindByName("Regions");
    Shape := Layer.Shapes.Item(0);
    da := New VisualDataAdapter.Create;
    Layer.Visuals.AddAreaVisual;
    da.visual := Layer.Visuals.Item(0As IMapAreaVisual;
    da.visual.DataAdapter := da;
    Shape.Text := (da.visual.DataAdapter As IMapDynamicDataAdapter).Data(shape.Id, 1);
End Sub UserProc;

Пример Fore

Для выполнения примера предполагается наличие формы, расположенной на ней кнопки с идентификатором «Button1», компонента UiMap с идентификатором «UiMap1» и компонента MapBox, содержащего загруженную карту и являющимся источником данных для компонента «UiMap1».

Sub UserProc;
Var
    M: IMap;
    Layer: IMapLayer;
    Shape: IMapTopobaseShape;
Begin
    M := UiMap1.Map;
    Layer := M.Layers.FindByName(
"Regions");
    Shape := Layer.Shapes.Item(
0);
    Shape.Text := 
"Регион";
    Layer.TextVisible := 
True;
End Sub UserProc;

После выполнения примера, при нажатии на кнопку, на карте будет отображена подпись первой области: «Поволжье».

Пример Fore.NET

Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore. Вместо компонентов Fore используйте их Fore.NET аналоги.

Imports Prognoz.Platform.Interop.Map;

Private Sub UserProc();
Var
    M: IMap;
    Layer: IMapLayer;
    Shape: IMapTopobaseShape;
Begin
    M := uiMapNet1.Map;
    Layer := M.Layers.FindByName["Regions"];
    Shape := Layer.Shapes.Item[0];
    Shape.Text := "Регион";
    Layer.TextVisible := True;
End Sub;

См. также:

IMapTopobaseShape