Объект 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 , представляющего только что сформированную группу. После формирования группы вы можете работать с ней так же, как с любой другой фигурой.
Методы
- Apply
- ApplyAnimation
- ConvertTextToSmartArt
- Copy
- Cut
- Delete
- Duplicate
- Export
- Flip
- IncrementLeft
- IncrementRotation
- IncrementTop
- PickUp
- PickupAnimation
- RerouteConnections
- ScaleHeight
- ScaleWidth
- Select
- SetShapesDefaultProperties
- Ungroup
- UpgradeMedia
- ZOrder
Свойства
- ActionSettings
- Adjustments
- AlternativeText
- AnimationSettings
- Application
- AutoShapeType
- BackgroundStyle
- BlackWhiteMode
- Callout
- Chart
- Child
- ConnectionSiteCount
- Connector
- ConnectorFormat
- Creator
- CustomerData
- Decorative
- Fill
- Glow
- GraphicStyle
- GroupItems
- HasChart
- HasInkXML
- HasSmartArt
- HasTable
- HasTextFrame
- Height
- HorizontalFlip
- Id
- InkXML
- IsNarration
- Left
- Line
- LinkFormat
- LockAspectRatio
- MediaFormat
- MediaType
- Model3D
- Name
- Nodes
- OLEFormat
- Parent
- ParentGroup
- PictureFormat
- PlaceholderFormat
- Reflection
- Rotation
- Shadow
- ShapeStyle
- SmartArt
- SoftEdge
- Table
- Tags
- TextEffect
- TextFrame
- TextFrame2
- ThreeD
- Title
- Top
- Type
- VerticalFlip
- Vertices
- Visible
- Width
- ZOrderPosition
См. также
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.