Compartir a través de


Método Layer.Add (Visio)

Agrega un objeto Shape a un objeto Layer .

Sintaxis

expresión. Agregar (SheetObject, fPresMems)

Expresión Variable que representa un objeto Layer .

Parameters

Nombre Obligatorio/opcional Tipo de datos Descripción
SheetObject Obligatorio [IVSHAPE] Nuevo objeto Shape agregado al objeto Layer.
fPresMems Obligatorio Integer Cero para eliminar las subformas de las asignaciones de capas anteriores; un valor distinto de cero para conservar las asignaciones de capas.

Valor devuelto

Nothing

Comentarios

Si la forma es un grupo y fPresMems es un valor distinto de cero, las formas que componen dicho grupo conservarán sus asignaciones de capas actuales y se agregarán también a esta capa. Si fPresMems es cero, las formas que componen el grupo volverán a asignarse a esta capa y perderán sus asignaciones de capas actuales.

Ejemplo:

En el ejemplo siguiente se muestra cómo utilizar el método Add para agregar objetos Shape a un objeto Layer. Si el objeto Shape que va a agregar a un objeto Layer es una forma de grupo, utilice el argumento fPresMems del método Add para especificar si las formas que componen el grupo conservarán o perderán sus asignaciones de capas anteriores. Si la forma agregada no es una forma de grupo, el argumento fPresMems no tendrá ningún efecto, pero su uso seguirá siendo obligatorio.

En el ejemplo se crean dos capas nuevas. Se dibujan dos formas rectangulares y se agregan a la primera capa. A continuación, se agrupan los rectángulos en una forma de grupo. Se selecciona la forma de grupo y se duplica, y las formas de grupo duplicadas se agregan a la segunda capa de dos formas diferentes.

Las asignaciones de capas de las formas que componen vsoShapeGroup2 se conservan si se pasa un valor distinto de cero para el argumento fPresMems del método Add, pero las asignaciones de capas anteriores de las formas que componen vsoShapeGroup1 se pierden al pasar cero al método Add para ese argumento. Como resultado, las formas de componente de vsoShapeGroup1 solo se asignan a vsoLayer2 , mientras que los componentes de vsoShapeGroup2 se asignan a vsoLayer1 y 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

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.