WPS 基础接口 > 表格 API 参考 > Shape > Shape 对象

代表绘图层中的对象,例如自选图形、任意多边形、OLE 对象或图片。

说明

Shape 对象是 Shapes 集合的成员。Shapes 集合包含某个工作簿中的所有形状。

注释
有三个代表形状的对象:Shapes 集合,它代表工作簿中所有的形状;ShapeRange 集合,它代表工作簿中形状的指定子集(例如,ShapeRange 对象可以代表工作簿中的形状一和形状四,或者,可以代表工作簿中所有选定的形状);Shape 对象,它代表文档中的某一个形状。如果您需要同时处理几个形状,或处理选定区域中的多个形状,请使用 ShapeRange 集合。

使用 Shape 对象

以下各节说明了如何:

返回与连接符的端点相连的形状

要返回一个代表连接符所连接形状之一的 Shape 对象,请使用 BeginConnectedShapeEndConnectedShape 属性。

返回新建的任意多边形

使用 BuildFreeformAddNodes 方法可定义一个新任意多边形的几何特性,使用 ConvertToShape 方法可创建任意多边形并返回代表它的 Shape 对象。

返回组中的单个形状

使用 GroupItems(index )(其中 index 是形状的名称或组中的索引号)可返回一个代表一组形状中某一形状的 Shape 对象。

返回新组成的形状组

使用 GroupRegroup 方法可将一系列形状分成一组并返回一个 Shape 对象,该对象代表新形成的组。在形成了一个组之后,您可以按您处理其他任何形状的方法来处理该组。

返回现有的形状

使用 Shapes(index )(其中 index 是形状名称或索引号)可返回代表某个形状的 Shape 对象。

返回选定区域中的形状

使用 Selection.ShapeRange(index)(其中 index 是形状名称或索引号)可返回一个代表选定区域中的形状的 Shape 对象。

示例

下例将 myDocument 中的形状一和名为“Rectangle 1”的形状进行水平翻转。

示例代码
let myDocument = Worksheets.Item(1)
myDocument.Shapes.Item(1).Flip(msoFlipHorizontal)
myDocument.Shapes.Item("Rectangle 1").Flip(msoFlipHorizontal)

每个添加到 Shapes 集合的形状将被分配一个默认名称。若要赋予该形状一个更有意义的名称,请使用 Name 属性。下例在 myDocument 中添加一个矩形,将其命名为 Red Square,并设置其前景色与线条样式。

示例代码
let shape = Worksheets.Item(1).Shapes.AddShape(msoShapeRectangle, 144, 144, 72, 72)
shape.Name = "Red Square"
shape.Fill.ForeColor.RGB = (255, 0, 0)
shape.Line.DashStyle = msoLineDashDot

下例设置了活动窗口内选定区域中的第一个形状的填充格式,假定至少选定了一个形状。

示例代码
ActiveWindow.Selection.ShapeRange.Item(1).Fill.ForeColor.RGB = (255, 0, 0)


请参阅