Compartir a través de


Cómo: Agregar formas a un documento de Visio mediante programación

Puede agregar formas a un documento de Microsoft Office Visio recuperando los patrones de una galería de imágenes y colocando las formas en la página activa.

Para obtener más información, vea la documentación de referencia de VBA para el método Microsoft.Office.Interop.Visio.Documents.Add, propiedad Microsoft.Office.Interop.Visio.Application.ActivePage, y el método Microsoft.Office.Interop.Visio.Page.Drop.

Agregar formas a un documento de Visio

Para agregar formas a un documento de Visio

  • Con un documento activo, recupere los patrones de la colección Documents.Masters y coloque las formas en el documento activo.Puede recuperar un patrón utilizando su índice o su nombre.

    En el ejemplo de código siguiente se crea un documento de Visio en blanco y, a continuación, se abre con la galería de símbolos Formas básicas acoplada.A continuación, el código recupera varias formas y las coloca en la página activa.

    Me.Application.Documents.Add("")
    
    Dim visioDocs As Visio.Documents = Me.Application.Documents
    Dim visioStencil As Visio.Document = visioDocs.OpenEx("Basic Shapes.vss", CShort(Microsoft.Office.Interop.Visio.VisOpenSaveArgs.visOpenDocked))
    
    Dim visioPage As Visio.Page = Me.Application.ActivePage
    
    Dim visioRectMaster As Visio.Master = visioStencil.Masters("Rectangle")
    Dim visioRectShape As Visio.Shape = visioPage.Drop(visioRectMaster, 4.25, 5.5)
    visioRectShape.Text = "Rectangle text."
    
    Dim visioStarMaster As Visio.Master = visioStencil.Masters("Star 7")
    Dim visioStarShape As Visio.Shape = visioPage.Drop(visioStarMaster, 2.0, 5.5)
    visioStarShape.Text = "Star text."
    
    Dim visioHexagonMaster As Visio.Master = visioStencil.Masters("Hexagon")
    Dim visioHexagonShape As Visio.Shape = visioPage.Drop(visioHexagonMaster, 7.0, 5.5)
    visioHexagonShape.Text = "Hexagon text."
    
    this.Application.Documents.Add("");
    
    Visio.Documents visioDocs = this.Application.Documents;
    Visio.Document visioStencil = visioDocs.OpenEx("Basic Shapes.vss",
        (short)Microsoft.Office.Interop.Visio.VisOpenSaveArgs.visOpenDocked);
    
    Visio.Page visioPage = this.Application.ActivePage;
    
    Visio.Master visioRectMaster = visioStencil.Masters.get_ItemU(@"Rectangle");
    Visio.Shape visioRectShape = visioPage.Drop(visioRectMaster, 4.25, 5.5);
    visioRectShape.Text = @"Rectangle text.";
    
    Visio.Master visioStarMaster = visioStencil.Masters.get_ItemU(@"Star 7");
    Visio.Shape visioStarShape = visioPage.Drop(visioStarMaster, 2.0, 5.5);
    visioStarShape.Text = @"Star text.";
    
    Visio.Master visioHexagonMaster = visioStencil.Masters.get_ItemU(@"Hexagon");
    Visio.Shape visioHexagonShape = visioPage.Drop(visioHexagonMaster, 7.0, 5.5);
    visioHexagonShape.Text = @"Hexagon text.";
    

Vea también

Tareas

Cómo: Copiar y pegar formas en un documento de Visio mediante programación

Conceptos

Información general sobre el modelo de objetos de Visio

Trabajar con formas de Visio

Otros recursos

Soluciones de Visio