Rect.Offset 方法

定义

将矩形移动指定的量。

重载

Offset(Vector)

将矩形移动指定向量。

Offset(Double, Double)

将矩形沿水平和垂直方向移动指定的量。

Offset(Rect, Vector)

返回一个矩形,该矩形是通过将指定矩形偏移指定向量而得到的。

Offset(Rect, Double, Double)

返回一个矩形,该矩形是通过将指定矩形偏移指定的水平和垂直量而得到的。

Offset(Vector)

将矩形移动指定向量。

public:
 void Offset(System::Windows::Vector offsetVector);
public void Offset (System.Windows.Vector offsetVector);
member this.Offset : System.Windows.Vector -> unit
Public Sub Offset (offsetVector As Vector)

参数

offsetVector
Vector

一个向量,指定矩形沿水平和垂直方向移动的量。

例外

Empty 矩形调用此方法。

示例

以下示例演示如何使用 Offset(Vector) 方法更改矩形的位置。

private Point offsetExample1()
{
    // Initialize new rectangle.
    Rect myRectangle = new Rect();

    // The Location property specifies the coordinates of the upper left-hand 
    // corner of the rectangle. 
    myRectangle.Location = new Point(10, 5);

    // Set the Size property of the rectangle with a width of 200
    // and a height of 50.
    myRectangle.Size = new Size(200, 50);

    // Create a vector to use to offset the position of the rectangle.
    Vector vector1 = new Vector(20, 30);

    // The Offset method translates this rectangle by the specified vector.
    // myRectangle location changed from 10,5 to 30,35.
    myRectangle.Offset(vector1);

    // This rectangle's location changed from 10,5 to 30,35.
    return myRectangle.Location;
}

注解

不允许在空矩形 (Rect.Empty) 调用此方法。

请注意,仅当可以直接更改 和 Y 属性时,X调用 Offset 方法才会生效。 由于 Rect 是值类型,如果使用属性或索引器引用 Rect 对象,则获取对象的副本,而不是对 对象的引用。 如果尝试更改 XY 属性或索引器引用,则会发生编译器错误。 同样,对 属性或索引器调用 Offset 不会更改基础对象。 如果要更改作为属性或索引器引用的 Rect 的值,请创建新的 Rect、修改其字段,然后将 赋 Rect 回属性或索引器。

适用于

Offset(Double, Double)

将矩形沿水平和垂直方向移动指定的量。

public:
 void Offset(double offsetX, double offsetY);
public void Offset (double offsetX, double offsetY);
member this.Offset : double * double -> unit
Public Sub Offset (offsetX As Double, offsetY As Double)

参数

offsetX
Double

水平移动矩形的量。

offsetY
Double

垂直移动矩形的量。

例外

Empty 矩形调用此方法。

示例

以下示例演示如何使用 Offset(Double, Double) 方法更改矩形的位置。

private Point offsetExample2()
{
    // Initialize new rectangle.
    Rect myRectangle = new Rect();

    // The Location property specifies the coordinates of the upper left-hand 
    // corner of the rectangle. 
    myRectangle.Location = new Point(10, 5);

    // Set the Size property of the rectangle with a width of 200
    // and a height of 50.
    myRectangle.Size = new Size(200, 50);

    // The Offset method translates this rectangle by the specified horizontal and 
    // vertical amounts. 
    // myRectangle location changed from 10,5 to 30,35.
    myRectangle.Offset(20,30);

    // This rectangle's location changed from 10,5 to 30,35.
    return myRectangle.Location;
}

注解

不允许在空矩形 (Rect.Empty) 调用此方法。

请注意,仅当可以直接更改 和 Y 属性时,X调用 Offset 方法才会生效。 由于 Rect 是值类型,如果使用属性或索引器引用 Rect 对象,则获取对象的副本,而不是对 对象的引用。 如果尝试更改 XY 属性或索引器引用,则会发生编译器错误。 同样,对 属性或索引器调用 Offset 不会更改基础对象。 如果要更改作为属性或索引器引用的 Rect 的值,请创建新的 Rect、修改其字段,然后将 赋 Rect 回属性或索引器。

适用于

Offset(Rect, Vector)

返回一个矩形,该矩形是通过将指定矩形偏移指定向量而得到的。

public:
 static System::Windows::Rect Offset(System::Windows::Rect rect, System::Windows::Vector offsetVector);
public static System.Windows.Rect Offset (System.Windows.Rect rect, System.Windows.Vector offsetVector);
static member Offset : System.Windows.Rect * System.Windows.Vector -> System.Windows.Rect
Public Shared Function Offset (rect As Rect, offsetVector As Vector) As Rect

参数

rect
Rect

原始矩形。

offsetVector
Vector

一个向量,指定新矩形的水平和垂直偏移量。

返回

所得矩形。

例外

示例

以下示例演示如何使用 Offset(Rect, Vector) 方法更改矩形的位置。

private Point offsetExample3()
{
    // Initialize new rectangle.
    Rect myRectangle = new Rect();

    // The Location property specifies the coordinates of the upper left-hand 
    // corner of the rectangle. 
    myRectangle.Location = new Point(10, 5);

    // Set the Size property of the rectangle with a width of 200
    // and a height of 50.
    myRectangle.Size = new Size(200, 50);

    // Create a vector to use to offset the position of the rectangle.
    Vector vector1 = new Vector(20, 30);

    // The Offset method translates the specified rectangle by the specified amount 
    // and returns the resulting Rect. 
    // resultRect location changed from 10,5 to 30,35.
    Rect resultRect = Rect.Offset(myRectangle, vector1);

    // This rectangle's location changed from 10,5 to 30,35.
    return resultRect.Location;
}

注解

不允许使用空矩形 (Rect.Empty) 调用此方法。

适用于

Offset(Rect, Double, Double)

返回一个矩形,该矩形是通过将指定矩形偏移指定的水平和垂直量而得到的。

public:
 static System::Windows::Rect Offset(System::Windows::Rect rect, double offsetX, double offsetY);
public static System.Windows.Rect Offset (System.Windows.Rect rect, double offsetX, double offsetY);
static member Offset : System.Windows.Rect * double * double -> System.Windows.Rect
Public Shared Function Offset (rect As Rect, offsetX As Double, offsetY As Double) As Rect

参数

rect
Rect

要移动的矩形。

offsetX
Double

新矩形的水平偏移量。

offsetY
Double

新矩形的垂直偏移量。

返回

所得矩形。

例外

示例

以下示例演示如何使用 Offset(Rect, Double, Double) 方法更改矩形的位置。

private Point offsetExample4()
{
    // Initialize new rectangle.
    Rect myRectangle = new Rect();

    // The Location property specifies the coordinates of the upper left-hand 
    // corner of the rectangle. 
    myRectangle.Location = new Point(10, 5);

    // Set the Size property of the rectangle with a width of 200
    // and a height of 50.
    myRectangle.Size = new Size(200, 50);

    // Create a vector to use to offset the position of the rectangle.
    Vector vector1 = new Vector(20, 30);

    // The Offset method translates the specified rectangle by the specified horizontal 
    // and vertical amounts and returns the resulting Rect. 
    // resultRect location changed from 10,5 to 30,35.
    Rect resultRect = Rect.Offset(myRectangle, 20, 30);

    // This rectangle's location changed from 10,5 to 30,35.
    return resultRect.Location;
}

注解

不允许使用空矩形 (Rect.Empty) 调用此方法。

适用于