共用方式為


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 Forms 搭配使用,而且需要 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)

備註

矩形是由其 WidthHeight和左上角所定義,並以 Location 屬性表示。

若要繪製矩形,您需要 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

取得 x 座標,這個 Rectangle 結構 XWidth 屬性值的總和。

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 結構在位置或大小上是否不同。

適用於