Свойство Shape.Layer (Visio)
Возвращает слой, которому назначена фигура. Только для чтения.
выражение. Layer
(Индекс)
Выражение Переменная, представляющая объект Shape .
Имя | Обязательный или необязательный | Тип данных | Описание |
---|---|---|---|
Индекс; | Обязательный | Integer | Порядковый номер получаемого слоя. |
Уровень
Если фигура назначена трем слоям, допустимыми индексами, которые можно передать в ее свойство Layer , являются от 1 до 3.
Чтобы получить количество слоев, которым назначена фигура, используйте свойство LayerCount .
В этом макросе Microsoft Visual Basic для приложений (VBA) показано, как использовать свойство Layer для получения ссылки на определенный слой. Он также использует свойство LayerCount для определения количества слоев, которым назначена фигура, и свойство Name для получения имени текущего слоя.
Public Sub Layer_Example()
Dim vsoPage As Visio.Page
Dim vsoShape As Visio.Shape
Dim vsoLayers As Visio.Layers
Dim vsoLayer As Visio.Layer
If ActiveDocument Is Nothing Then
Documents.Add ("")
End If
Set vsoPage = ActivePage
If vsoPage Is Nothing Then
Set vsoPage = ActiveDocument.Pages(1)
End If
'Draw a rectangle.
Set vsoShape = vsoPage.DrawRectangle(1, 5, 5, 1)
'Get the Layers collection.
Set vsoLayers = vsoPage.Layers
'Create a layer named ExampleLayer1 and add the shape to it.
Set vsoLayer = vsoLayers.Add("ExampleLayer1")
vsoLayer.Add vsoShape, 1
'Create a layer named ExampleLayer2 and add the shape to it.
Set vsoLayer = vsoLayers.Add("ExampleLayer2")
vsoLayer.Add vsoShape, 1
'Verify that the shape has been assigned to 2 layers.
Debug.Print "The rectangle is assigned to " & vsoShape.LayerCount & " layers."
'Get a reference to the first layer.
Set vsoLayer = vsoShape.Layer(1)
'Verify by using the Name property.
Debug.Print "Current vsoLayer name is """ & vsoLayer.Name & "."""
End Sub
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.