Rectangle 结构

定义

存储一组四个整数,表示矩形的位置和大小。

public value class Rectangle : IEquatable<System::Drawing::Rectangle>
public value class Rectangle
[System.ComponentModel.TypeConverter("System.Drawing.RectangleConverter, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
public struct Rectangle : IEquatable<System.Drawing.Rectangle>
public struct Rectangle
public struct Rectangle : IEquatable<System.Drawing.Rectangle>
[System.ComponentModel.TypeConverter(typeof(System.Drawing.RectangleConverter))]
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public struct Rectangle
[<System.ComponentModel.TypeConverter("System.Drawing.RectangleConverter, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")>]
type Rectangle = struct
type Rectangle = struct
[<System.ComponentModel.TypeConverter(typeof(System.Drawing.RectangleConverter))>]
[<System.Runtime.InteropServices.ComVisible(true)>]
[<System.Serializable>]
type Rectangle = struct
Public Structure Rectangle
Implements IEquatable(Of Rectangle)
Public Structure Rectangle
继承
Rectangle
属性
实现

示例

以下示例绘制一个矩形,其左上角为 (10, 10)。 矩形的宽度为 100,高度为 50。 传递给 Pen 构造函数的第二个参数指示笔宽为 5 像素。

绘制矩形时,笔以矩形边界为中心。 由于笔宽为 5,矩形的两侧宽度为 5 像素,因此在边界本身上绘制 1 个像素,在内部绘制 2 个像素,在外部绘制 2 个像素。 有关笔对齐的更多详细信息,请参阅 如何:设置笔宽和对齐方式

下图显示了生成的矩形。 虚线显示如果笔宽为一个像素,则绘制矩形的位置。 矩形左上角的放大视图显示,粗黑色线条以这些虚线为中心。

笔

该示例设计用于 Windows 窗体,它需要 PaintEventArgse,这是 Paint 事件处理程序的参数。

Pen blackPen = new Pen(Color.FromArgb(255, 0, 0, 0), 5);
e.Graphics.DrawRectangle(blackPen, 10, 10, 100, 50);
Dim blackPen As New Pen(Color.FromArgb(255, 0, 0, 0), 5)
e.Graphics.DrawRectangle(blackPen, 10, 10, 100, 50)

注解

矩形由 WidthHeightLocation 属性表示的左上角定义。

若要绘制矩形,需要一个 Graphics 对象和一个 Pen 对象。 Graphics 对象提供 DrawRectangle 方法,Pen 对象存储线条的功能,如颜色和宽度。 绘制矩形的单位由用于绘图的图形对象的 PageUnitPageScale 属性决定。 默认单位为像素。

若要绘制填充颜色的 Rectangle,需要一个 Graphics 对象和派生自 Brush 的对象,例如 SolidBrushLinearGradientBrushGraphics 对象提供 FillRectangle 方法,Brush 对象提供颜色和填充信息。

对于更高级的形状,请使用 Region 对象。

构造函数

Rectangle(Int32, Int32, Int32, Int32)

使用指定的位置和大小初始化 Rectangle 类的新实例。

Rectangle(Point, Size)

使用指定的位置和大小初始化 Rectangle 类的新实例。

字段

Empty

表示一个 Rectangle 结构,其属性未初始化。

属性

Bottom

获取此 Rectangle 结构的 YHeight 属性值的总和的 y 坐标。

Height

获取或设置此 Rectangle 结构的高度。

IsEmpty

测试此 Rectangle 的所有数值属性是否都具有零值。

Left

获取此 Rectangle 结构的左边缘的 x 坐标。

Location

获取或设置此 Rectangle 结构的左上角的坐标。

Right

获取此 Rectangle 结构的 XWidth 属性值之和的 x 坐标。

Size

获取或设置此 Rectangle的大小。

Top

获取此 Rectangle 结构的上边缘的 y 坐标。

Width

获取或设置此 Rectangle 结构的宽度。

X

获取或设置此 Rectangle 结构的左上角的 x 坐标。

Y

获取或设置此 Rectangle 结构的左上角的 y 坐标。

方法

Ceiling(RectangleF)

通过将 RectangleF 值舍入到下一个更高的整数值,将指定的 RectangleF 结构转换为 Rectangle 结构。

Contains(Int32, Int32)

确定指定点是否包含在此 Rectangle 结构中。

Contains(Point)

确定指定点是否包含在此 Rectangle 结构中。

Contains(Rectangle)

确定由 rect 表示的矩形区域是否完全包含在此 Rectangle 结构中。

Equals(Object)

测试 obj 是否是具有此 Rectangle 结构相同位置和大小的 Rectangle 结构。

Equals(Rectangle)

指示当前对象是否等于同一类型的另一个对象。

FromLTRB(Int32, Int32, Int32, Int32)

使用指定的边缘位置创建 Rectangle 结构。

GetHashCode()

返回此 Rectangle 结构的哈希代码。 有关使用哈希代码的信息,请参阅 GetHashCode()

Inflate(Int32, Int32)

将此 Rectangle 放大指定金额。

Inflate(Rectangle, Int32, Int32)

创建并返回指定 Rectangle 结构的放大副本。 副本按指定的金额放大。 原始 Rectangle 结构保持不变。

Inflate(Size)

将此 Rectangle 放大指定金额。

Intersect(Rectangle)

将此 Rectangle 替换为自身的交集和指定的 Rectangle

Intersect(Rectangle, Rectangle)

返回第三个 Rectangle 结构,该结构表示另外两个 Rectangle 结构的交集。 如果没有交集,则返回空 Rectangle

IntersectsWith(Rectangle)

确定此矩形是否与 rect相交。

Offset(Int32, Int32)

按指定量调整此矩形的位置。

Offset(Point)

按指定量调整此矩形的位置。

Round(RectangleF)

通过将 RectangleF 值舍入到最接近的整数值,将指定的 RectangleF 转换为 Rectangle

ToString()

将此 Rectangle 的属性转换为可读字符串。

Truncate(RectangleF)

通过截断 RectangleF 值将指定的 RectangleF 转换为 Rectangle

Union(Rectangle, Rectangle)

获取包含两个 Rectangle 结构的并集的 Rectangle 结构。

运算符

Equality(Rectangle, Rectangle)

测试两个 Rectangle 结构是否具有相同的位置和大小。

Inequality(Rectangle, Rectangle)

测试两个 Rectangle 结构在位置或大小上是否存在差异。

适用于