多个对象![]() ![]() ![]() |
代表绘图层中的对象,如自选图形、任意多边形、OLE 对象或图片。Shape 对象是 Shapes 集合的成员。Shapes 集合包含幻灯片上的所有图形。
注意 有三个代表图形的对象:Shapes 集合,该集合代表文档中的所有图形;ShapeRange 集合,该集合代表文档中的图形的指定子集(例如,ShapeRange 对象可能代表文档中的第一个和第四个图形,或者代表文档中所有选定的图形);以及 Shape 对象,该对象代表文档中的单个图形。如果同时处理若干图形,或处理选定的图形,可用 ShapeRange 集合。有关如何处理单个图形或同时处理若干图形的概述,请参阅处理图形(绘图对象)。
本部分说明了下述内容:
可用 Shapes(index)(其中 index 为图形的名称或索引号)返回代表某一图形的 Shape 对象。下例将 myDocument 中第一个图形和名为“Rectangle 1”的图形进行水平翻转。
Set myDocument = Worksheets(1)
myDocument.Shapes(1).Flip msoFlipHorizontal
myDocument.Shapes("Rectangle 1").Flip msoFlipHorizontal
向 Shapes 集合添加新的图形时,将对该新添加的图形赋以默认的名称。若要为图形指定更有意义的名称,可使用 Name 属性。下例向 myDocument 添加矩形,将其命名为“Red Square”,然后设置该矩形的前景色和线型。
Set myDocument = Worksheets(1)
With myDocument.Shapes.AddShape(msoShapeRectangle, _
144, 144, 72, 72)
.Name = "Red Square"
.Fill.ForeColor.RGB = RGB(255, 0, 0)
.Line.DashStyle = msoLineDashDot
End With
可用 Selection.ShapeRange(index)(其中 index 为图形的名称或索引号)返回代表某一选定图形的 Shape 对象。下例设置了活动窗口内选定图形中的第一个图形的填充格式,假定至少选定了一个图形。
ActiveWindow.Selection.ShapeRange(1).Fill.ForeColor.RGB = _
RGB(255, 0, 0)
若要返回代表附加到连接符的某一端点上的图形的 Shape 对象,可使用 BeginConnectedShape 属性或 EndConnectedShape 属性。
可用 BuildFreeform 方法和 AddNodes 方法定义新建的任意多边形的几何图形。用 ConvertToShape 方法创建任意多边形并返回代表它的 Shape 对象。
可用 GroupItems(index)(其中 index 为图形的名称或在组合中的索引号)返回代表组合图形中的单个图形的 Shape 对象。
可用 Group 或 Regroup 方法来组合一批图形,并返回代表新构造的组合的单个 Shape 对象。在构造完一个新组合后,可以像对其他图形一样来处理它。