Compartilhar via


Método Layer.Add (Visio)

Adiciona um objeto Shape a um objeto Layer .

Sintaxe

expressão. Adicionar (SheetObject, fPresMems)

Expressão Uma variável que representa um objeto Layer .

Parâmetros

Nome Obrigatório/Opcional Tipo de dados Descrição
SheetObject Obrigatório [IVSHAPE] O novo objeto Shape adicionado ao objeto Layer.
fPresMems Obrigatório Integer Zero para remover subformas de qualquer atribuição de camadas anterior; diferente de zero para preservar as atribuições de camadas.

Valor de retorno

Nada

Comentários

Se a forma for um grupo e fPresMems for diferente de zero, as formas componentes do grupo reterão suas atribuições de camadas atuais e também serão adicionadas a essa camada. Se fPresMems for zero, as formas componentes serão atribuídas novamente a essa camada e perderão suas atribuições de camadas atuais.

Exemplo

O exemplo a seguir mostra como usar o método Add para adicionar objetos Shape a um objeto Layer. Quando o objeto Shape adicionado a um objeto Layer for uma forma de grupo, use o argumento fPresMems do método Add para especificar se as formas componentes do grupo reterão ou perderão suas atribuições de camadas anteriores. Se a forma adicionada não for uma forma de grupo, o argumento fPresMems não terá efeito, mas ainda será necessário.

No exemplo, são criadas duas novas camadas. Duas formas de retângulo são desenhadas e adicionadas à primeira camada. Em seguida, os retângulos são agrupados em uma forma de grupo. A forma de grupo é então selecionada e duplicada, e as formas de grupo duplicadas são adicionadas à segunda camada de duas maneiras diferentes.

As atribuições de camadas das formas componentes do vsoShapeGroup2 são retidas passando um valor diferente de zero para o argumento fPresMems do método Add, mas as atribuições de camada das formas componentes do vsoShapeGroup1 anteriores são perdidas quando um zero é passado para o método Add para esse argumento. Como resultado, as formas de componente do vsoShapeGroup1 são atribuídas apenas a vsoLayer2 , enquanto os componentes do vsoShapeGroup2 são atribuídos a vsoLayer1 e vsoLayer2.

Public Sub AddShapesToLayer_Example() 
 
 Dim vsoDocument As Visio.Document 
 Dim vsoPages As Visio.Pages 
 Dim vsoPage As Visio.Page 
 Dim vsoLayers As Visio.Layers 
 Dim vsoLayer1 As Visio.Layer 
 Dim vsoLayer2 As Visio.Layer 
 Dim vsoShape1 As Visio.Shape 
 Dim vsoShape2 As Visio.Shape 
 Dim vsoShapeGroup1 As Visio.Shape 
 Dim vsoShapeGroup2 As Visio.Shape 
 
 'Add a Document object based on the Basic Diagram template. 
 Set vsoDocument = Documents.Add("Basic Diagram.vst") 
 
 'Get the Pages collection and add a page to the collection. 
 Set vsoPages = vsoDocument.Pages 
 Set vsoPage = vsoPages.Add 
 
 'Get the Layers collection and add two layers 
 'to the collection. 
 Set vsoLayers = vsoPage.Layers 
 Set vsoLayer1 = vsoLayers.Add("MyLayer") 
 Set vsoLayer2 = vsoLayers.Add("MySecondLayer") 
 
 'Draw two rectangles. 
 Set vsoShape1 = vsoPage.DrawRectangle(3, 3, 5, 6) 
 Set vsoShape2 = vsoPage.DrawRectangle(4, 4, 6, 7) 
 
 'Assign each rectangle to the first layer. 
 vsoLayer1.Add vsoShape1, 0 
 vsoLayer1.Add vsoShape2, 0 
 
 'Select the two rectangles and group them. 
 ActiveWindow.SelectAll 
 ActiveWindow.Selection.Group 
 
 'Duplicate the group and set each group as a Shape object. 
 Set vsoShapeGroup1 = vsoPage.Shapes(1) 
 vsoShapeGroup1.Duplicate 
 Set vsoShapeGroup2 = vsoPage.Shapes(2) 
 
 'Add the first grouped shape to the second layer. 
 'This group's component shapes are added to the layer 
 'but lose their previous layer assignment. 
 vsoLayer2.Add vsoShapeGroup1, 0 
 
 'Add the second grouped shape to the second layer. 
 'This group's component shapes are added to the layer 
 'but retain their previous layer assignment. 
 vsoLayer2.Add vsoShapeGroup2, 1 
 
End Sub

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.