Point 结构

定义

提供有序的 x 坐标和 y 坐标整数对,该坐标对在二维平面中定义一个点。

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

示例

下面的代码示例使用为这些类型定义的多个重载运算符创建点和大小。 它还演示如何使用 SystemPens 类。

此示例旨在与 Windows 窗体 一起使用。 创建包含名为 subtractButtonButton窗体。 将代码粘贴到窗体中, CreatePointsAndSizes 并从窗体的事件 Paint 处理方法调用 方法,作为 ePaintEventArgs传递。

void CreatePointsAndSizes( PaintEventArgs^ e )
{
   // Create the starting point.
   Point startPoint = Point(subtractButton->Size);
   
   // Use the addition operator to get the end point.
   Point endPoint = startPoint + System::Drawing::Size( 140, 150 );
   
   // Draw a line between the points.
   e->Graphics->DrawLine( SystemPens::Highlight, startPoint, endPoint );
   
   // Convert the starting point to a size and compare it to the
   // subtractButton size.  
   System::Drawing::Size buttonSize = (System::Drawing::Size)startPoint;
   if ( buttonSize == subtractButton->Size )
   {
      e->Graphics->DrawString( "The sizes are equal.", gcnew System::Drawing::Font( this->Font,FontStyle::Italic ), Brushes::Indigo, 10.0F, 65.0F );
   }
}
private void CreatePointsAndSizes(PaintEventArgs e)
{

    // Create the starting point.
    Point startPoint = new Point(subtractButton.Size);

    // Use the addition operator to get the end point.
    Point endPoint = startPoint + new Size(140, 150);

    // Draw a line between the points.
    e.Graphics.DrawLine(SystemPens.Highlight, startPoint, endPoint);

    // Convert the starting point to a size and compare it to the
    // subtractButton size.  
    Size buttonSize = (Size)startPoint;
    if (buttonSize == subtractButton.Size)

        // If the sizes are equal, tell the user.
    {
        e.Graphics.DrawString("The sizes are equal.", 
            new Font(this.Font, FontStyle.Italic), 
            Brushes.Indigo, 10.0F, 65.0F);
    }
}
Private Sub CreatePointsAndSizes(ByVal e As PaintEventArgs)

    ' Create the starting point.
    Dim startPoint As New Point(subtractButton.Size)

    ' Use the addition operator to get the end point.
    Dim endPoint As Point = Point.op_Addition(startPoint, _
        New Size(140, 150))

    ' Draw a line between the points.
    e.Graphics.DrawLine(SystemPens.Highlight, startPoint, endPoint)

    ' Convert the starting point to a size and compare it to the
    ' subtractButton size.  
    Dim buttonSize As Size = Point.op_Explicit(startPoint)
    If (Size.op_Equality(buttonSize, subtractButton.Size)) Then

        ' If the sizes are equal, tell the user.
        e.Graphics.DrawString("The sizes are equal.", _
            New Font(Me.Font, FontStyle.Italic), _
            Brushes.Indigo, 10.0F, 65.0F)
    End If

End Sub

注解

若要将 转换为 PointPointF,请使用 Implicit

构造函数

Point(Int32)

使用由整数值指定的坐标初始化 Point 结构的新实例。

Point(Int32, Int32)

使用指定坐标初始化 Point 结构的新实例。

Point(Size)

Size 初始化 Point 结构的新实例。

字段

Empty

表示一个 Point,其 XY 值设为零。

属性

IsEmpty

获取一个值,该值指示此 Point 是否为空。

X

获取或设置此 Point 的 x 坐标。

Y

获取或设置此 Point 的 y 坐标。

方法

Add(Point, Size)

将指定的 Size 添加到指定的 Point

Ceiling(PointF)

通过将 PointF 的值舍入到与其接近的较大整数值,将指定的 Point 转换为 PointF

Equals(Object)

指定此点实例是否包含与指定对象相同的坐标。

Equals(Point)

指定此点实例是否包含与另一点相同的坐标。

GetHashCode()

返回此 Point 的哈希代码。

Offset(Int32, Int32)

按指定量平移此 Point

Offset(Point)

将此 Point 平移指定的 Point

Round(PointF)

通过将 PointF 值舍入到最接近的整数值,将指定的 Point 转换为 PointF 对象。

Subtract(Point, Size)

返回从指定的 Size 减去指定的 Point 之后的结果。

ToString()

将此 Point 转换为可读字符串。

Truncate(PointF)

通过截断 PointF 值,将指定的 Point 转换为 PointF

运算符

Addition(Point, Size)

Point 平移给定 Size

Equality(Point, Point)

比较两个 Point 对象。 此结果指定两个 X 对象的 YPoint 属性的值是否相等。

Explicit(Point to Size)

将指定的 Point 结构转换为 Size 结构。

Implicit(Point to PointF)

将指定的 Point 结构转换为 PointF 结构。

Inequality(Point, Point)

比较两个 Point 对象。 此结果指定两个 X 对象的 YPoint 属性的值是否不等。

Subtraction(Point, Size)

Point 平移给定 Size 的负数。

适用于