Объект Shape (PowerPoint)

Представляет объект на слое документа, например автофигуру, свободную форму, объект OLE или рисунок.

Замечания

Примечание.

Есть три объекта, которые представляют фигуры: коллекция Shapes , которая представляет все фигуры в документе; коллекция ShapeRange , представляющая указанное подмножество фигур в документе (например, объект ShapeRange может представлять фигуры один и четыре в документе или может представлять все выбранные фигуры в документе); и объект Shape , представляющий одну фигуру в документе. Если вы хотите работать с несколькими фигурами одновременно или с фигурами в выделенном фрагменте, используйте коллекцию ShapeRange .

Общие сведения о том, как работать с одной фигурой или несколькими фигурами одновременно, см. в статье Работа с фигурами (объектами-рисунками).

В следующих примерах описано, как:

  • Возвращает существующую фигуру на слайде, индексированную по имени или номеру.

  • Возвращает только что созданную фигуру на слайде.

  • Возвращает фигуру в выделенном фрагменте.

  • Возвращает заголовок слайда и другие заполнители на слайде.

  • Возвращает фигуры, прикрепленные к концам соединителя.

  • Возвращает фигуру по умолчанию для презентации.

  • Возвращает только что созданную свободную форму.

  • Возвращает одну фигуру из группы.

  • Возвращает только что сформированную группу фигур.

Пример

Используйте фигуры (индекс), где индекс — это имя фигуры или номер индекса, чтобы вернуть объект Shape , представляющий фигуру на слайде. В следующем примере по горизонтали фигура 1 и фигура с именем Rectangle 1 в myDocument.

Set myDocument = ActivePresentation.Slides(1)

myDocument.Shapes(1).Flip msoFlipHorizontal

myDocument.Shapes("Rectangle 1").Flip msoFlipHorizontal

Каждой фигуре присваивается имя по умолчанию при ее добавлении в коллекцию Фигуры . Чтобы придать фигуре более понятное имя, используйте свойство Name . В следующем примере в myDocument добавляется прямоугольник, ему присваивается имя Красный квадрат, а затем задается цвет переднего плана и стиль линии.

Set myDocument = ActivePresentation.Slides(1)

With myDocument.Shapes.AddShape(Type:=msoShapeRectangle, _

        Top:=144, Left:=144, Width:=72, Height:=72)

    .Name = "Red Square"

    .Fill.ForeColor.RGB = RGB(255, 0, 0)

    .Line.DashStyle = msoLineDashDot

End With

Чтобы добавить фигуру на слайд и вернуть объект Shape , представляющий только что созданную фигуру, используйте один из следующих методов коллекции Shapes : Add3DModel, AddCallout, AddConnector, AddCurve, AddLabel, AddLine, AddMediaObject, AddOLEObject, AddPicture, AddPlaceholder, AddPolyline, AddShape, AddTable, AddTextbox, AddTextEffect, AddTitle.

Используйте selection.ShapeRange (index), где индекс — это имя фигуры или номер индекса, чтобы вернуть объект Shape , представляющий фигуру в выделенном фрагменте. В следующем примере задается заливка для первой фигуры в выделенном окне в активном окне, при условии, что в выделенном фрагменте есть по крайней мере одна фигура.

ActiveWindow.Selection.ShapeRange(1).Fill _

    .ForeColor.RGB = RGB(255, 0, 0)

Используйте Shapes.Title , чтобы вернуть объект Shape , представляющий существующий заголовок слайда. Используйте Shapes.AddTitle , чтобы добавить заголовок на слайд, который еще не имеет его, и вернуть объект Shape , представляющий только что созданный заголовок. Используйте Shapes.Placeholders (index), где index — это номер индекса заполнителя, чтобы вернуть объект Shape , представляющий заполнитель. Если вы не изменили порядок наложения фигур на слайде, следующие три оператора эквивалентны, при условии, что у одного слайда есть заголовок.

ActivePresentation.Slides(1).Shapes.Title _

    .TextFrame.TextRange.Font.Italic = True

ActivePresentation.Slides(1).Shapes.Placeholders(1) _

    .TextFrame.TextRange.Font.Italic = True

ActivePresentation.Slides(1).Shapes(1).TextFrame _

    .TextRange.Font.Italic = True

Чтобы вернуть объект Shape , представляющий одну из фигур, присоединенных соединителем, используйте свойство BeginConnectedShape или EndConnectedShape .

Чтобы вернуть объект Shape , представляющий фигуру по умолчанию для презентации, используйте свойство DefaultShape .

Используйте методы BuildFreeform и AddNodes для определения геометрии новой свободной формы, а метод ConvertToShape — для создания свободной формы и возврата объекта Shape , представляющего ее.

Используйте GroupItems (index), где индекс — это имя фигуры или номер индекса в группе, чтобы вернуть объект Shape , представляющий одну фигуру в сгруппированной фигуре.

Используйте метод Group или Regroup для группировки диапазона фигур и возврата одного объекта Shape , представляющего только что сформированную группу. После формирования группы вы можете работать с ней так же, как с любой другой фигурой.

Методы

Свойства

См. также

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

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