Compartilhar via


Método Shapes.BuildFreeform (Project)

Cria um objeto FreeformBuilder que representa um novo desenho de forma livre. O desenho de forma livre pode ser convertido em um objeto Shape .

Sintaxe

expression. BuildFreeform(EditingType,X1,Y1)

expressão Uma variável que representa um objeto Formas.

Parâmetros

Nome Obrigatório/Opcional Tipo de dados Descrição
EditingType Obrigatório MsoEditingType A propriedade de edição do primeiro nó.
X1 Obrigatório Single A posição (em pontos) do primeiro nó no desenho de forma livre, em relação à borda esquerda do relatório.
Y1 Obrigatório Single A posição (em pontos) do primeiro nó no desenho de forma livre, em relação à borda superior do relatório.
EditingType Obrigatório MSOEDITINGTYPE
X1 Obrigatório FLOAT
Y1 Obrigatório FLOAT
Nome Obrigatório/Opcional Tipo de dados Descrição

Valor de retorno

FreeformBuilder

Comentários

Use o método AddNodes para adicionar segmentos à forma livre. Depois de adicionar pelo menos um segmento à forma livre, você pode usar o método ConvertToShape para converter o objeto FreeformBuilder em um objeto Shape que tenha a descrição geométrica definida.

Exemplo

O exemplo a seguir adiciona uma forma livre com cinco vértices ao relatório, converte a forma livre em uma forma e altera o estilo de fundo da forma.

Sub AddFreeform2()
    Dim shapeReport As Report
    Dim reportName As String
    Dim freeformBuild As FreeformBuilder
    Dim freeformShape As shape

    reportName = "Freeform2 report"
    Set shapeReport = ActiveProject.Reports.Add(reportName)
    
    Set freeformBuild = shapeReport.Shapes.BuildFreeform(msoEditingCorner, 360, 200)
    
    With freeformBuild
        .AddNodes msoSegmentCurve, msoEditingCorner, 380, 230, 400, 450, 300
        .AddNodes msoSegmentCurve, msoEditingAuto, 480, 200
        .AddNodes msoSegmentLine, msoEditingAuto, 480, 400
        .AddNodes msoSegmentLine, msoEditingAuto, 360, 200
        .ConvertToShape
    End With
    
    Set freeformShape = shapeReport.Shapes(1)
    
    freeformShape.BackgroundStyle = msoBackgroundStylePreset10
End Sub

Confira também

ObjetoShapes Object

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.