Объект CanvasShapes (Word)

Используйте свойство CanvasItems объекта Shape или ShapeRange , чтобы вернуть коллекцию CanvasShapes .

Замечания

Чтобы добавить фигуры на холст рисования, используйте следующие методы коллекции CanvasShapes : AddCallout, AddConnector, AddCurve, AddLabel, AddLine, AddPicture, AddPolyline, AddShape, AddTextbox, AddTextEffect или BuildFreeform. В следующем примере холст рисования добавляется в активный документ, а затем три фигуры на холсте рисования.

Sub AddCanvasShapes() 
 Dim shpCanvas As Shape 
 Dim shpCanvasShapes As CanvasShapes 
 Dim shpCnvItem As Shape 
 
 'Adds a new canvas to the document 
 Set shpCanvas = ActiveDocument.Shapes _ 
 .AddCanvas(Left:=100, Top:=75, _ 
 Width:=50, Height:=75) 
 Set shpCanvasShapes = shpCanvas.CanvasItems 
 
 'Adds shapes to the CanvasShapes collection 
 With shpCanvasShapes 
 .AddShape Type:=msoShapeRectangle, _ 
 Left:=0, Top:=0, Width:=50, Height:=50 
 .AddShape Type:=msoShapeOval, _ 
 Left:=5, Top:=5, Width:=40, Height:=40 
 .AddShape Type:=msoShapeIsoscelesTriangle, _ 
 Left:=0, Top:=25, Width:=50, Height:=50 
 End With 
End Sub

Используйте CanvasItems (index), где индекс — это имя или номер индекса, чтобы вернуть одну фигуру в коллекции CanvasShapes . В следующем примере задаются свойства Линия и Заливка и по вертикали переворачивать третью фигуру на холсте документа.

Sub CanvasShapeThree() 
 With ActiveDocument.Shapes(1).CanvasItems(3) 
 .Line.ForeColor.RGB = RGB(50, 0, 255) 
 .Fill.ForeColor.RGB = RGB(50, 0, 255) 
 .Flip msoFlipVertical 
 End With 
End Sub

Каждой фигуре присваивается имя по умолчанию при ее создании. Например, если добавить в документ три разных фигуры, они могут называться Rectangle 2, TextBox 3 и Oval 4. Используйте свойство Name , чтобы сослаться на имя по умолчанию или назначить фигуре более понятное имя.

Методы

Свойства

См. также

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.