Partager via


Layer.Add, méthode (Visio)

Ajoute un objet Shape à un objet Layer.

Syntaxe

expression. Add (SheetObject, fPresMems)

Expression Variable qui représente un objet Layer .

Parameters

Nom Requis/Facultatif Type de données Description
SheetObject Requis [IVSHAPE] Nouvel objet Shape ajouté à l'objet Layer.
fPresMems Requis Integer Cet argument a la valeur zéro pour supprimer les formes secondaires des associations précédentes de calque ou une valeur différente de zéro pour conserver les associations de calque.

Valeur renvoyée

Aucune

Remarques

Si la forme est un groupe et si l'argument fConserverMembres a une valeur différente de zéro, les formes constituant le groupe conservent leurs associations de calque actuelles et sont également ajoutées au calque. Si l'argument fConserverMembres a la valeur zéro, les formes constituant le groupe sont de nouveau associées à ce calque et perdent leurs associations de calque actuelles.

Exemple

L'exemple suivant indique comment utiliser la méthode Add pour ajouter des objets Shape à un objet Layer. Lorsque l'objet Shape ajouté à un objet Layer est une forme de groupe, utilisez l'argument fConserverMembres de la méthode Add pour indiquer si des formes constituant le groupe conservent ou perdent leurs associations précédentes de calque. Si la forme ajoutée n'est pas une forme de groupe, l'argument fConserverMembres n'a aucun effet, mais est néanmoins nécessaire.

Dans l'exemple, deux nouveaux calques sont créés. Deux formes rectangle sont dessinées, puis ajoutées au premier calque. Ensuite, les rectangles sont groupés en forme de groupe. Enfin, la forme de groupe est sélectionnée et dupliquée et les formes de groupe dupliquées sont ajoutées au second calque de deux façons.

Les associations de calque des formes constituant vsoShapeGroup2 sont conservées en transmettant une valeur différente de zéro pour l’argument fConserverMembres de la méthode Add, mais les associations précédentes de calque des formes du groupe vsoShapeGroup1 sont perdues lorsque la valeur zéro est transmise à la méthode Add pour cet argument. Par conséquent, les formes de composant de vsoShapeGroup1 sont affectées uniquement à vsoLayer2 , tandis que les composants de vsoShapeGroup2 sont affectés à vsoLayer1 et 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

Assistance et commentaires

Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.