EditElemStyle method (Layer)

Открывает диалог выбора стиля символа, линии или заливки.

Применяется к:

Layer

Синтаксис:

Visual Basic:

Function EditElemStyle(ElemStyle As ElemStyle, GraphType As eElemGraphType, Title As String, flags As Long) As Long

ElemStyle - стиль, которым заполняется диалог; после подтверждения в него записывается выбранный стиль.

GraphType - вид диалога:

eGraphTypePrimSymbol (3) - стиль символа;

eGraphTypePrimPolyline (4) - стиль линии;

eGraphTypePrimSquare (5) - стиль заливки и контура.

Title - заголовок окна диалога.

flags - на работу метода не влияет, передается 0.

Описание:

Если в диалоге нажата кнопка OK, метод возвращает 0, а выбранные параметры записываются в объект ElemStyle — например, стиль линии в свойство LineStyle, цвет заливки в FillColor, символ в SymbolID.

Если нажата кнопка «Отмена», метод возвращает -1, и объект ElemStyle не меняется. При других значениях GraphType диалог не открывается и метод сразу возвращает -1.

Пример:

Visual Basic:

Sub Layer_EditElemStyle
'Берем активный слой карты
Set L = Zulu.ActiveMapDoc.Layers.Active
'Открываем диалог выбора стиля линии
Set St = CreateObject("ZuluLib.ElemStyle")
If L.EditElemStyle(St, 4, "Стиль линии", 0) = 0 Then
  MsgBox "Выбран стиль линии " & St.LineStyle & ", цвет " & St.LineColor & ", толщина " & St.LineWidth
Else
  MsgBox "Выбор стиля отменен"
End If
End Sub

Python:

import zulu

def Macro_Layer_EditElemStyle():
    # Берем активный слой карты
    L = zulu.App.ActiveMapDoc.Layers.Active
    # Открываем диалог выбора стиля линии
    St = zulu.ElemStyle()
    if L.EditElemStyle(St, 4, "Стиль линии", 0) == 0:
        print("Выбран стиль линии", St.LineStyle, ", цвет", St.LineColor, ", толщина", St.LineWidth)
    else:
        print("Выбор стиля отменен")