SizeF 结构

定义

存储有序的浮点数对,通常是矩形的宽度和高度。

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

示例

下面的代码示例使用以下成员向 a ListBox 添加阴影:

此示例旨在与 Windows 窗体一起使用。 若要运行此示例,请将此代码粘贴到窗体中,并在处理表单AddShadow的事件时调用Paint该方法。 验证窗体是否包含一个 ListBox 命名的 listBox1

private:
   void AddShadow( PaintEventArgs^ e )
   {
      // Create two SizeF objects.
      SizeF shadowSize = listBox1->Size;
      SizeF addSize = SizeF(10.5F,20.8F);

      // Add them together and save the result in shadowSize.
      shadowSize = shadowSize + addSize;

      // Get the location of the ListBox and convert it to a PointF.
      PointF shadowLocation = listBox1->Location;

      // Add two points to get a new location.
      shadowLocation = shadowLocation + System::Drawing::Size( 5, 5 );

      // Create a rectangleF. 
      RectangleF rectFToFill = RectangleF(shadowLocation,shadowSize);

      // Create a custom brush using a semi-transparent color, and 
      // then fill in the rectangle.
      Color customColor = Color::FromArgb( 50, Color::Gray );
      SolidBrush^ shadowBrush = gcnew SolidBrush( customColor );
      array<RectangleF>^ temp0 = {rectFToFill};
      e->Graphics->FillRectangles( shadowBrush, temp0 );

      // Dispose of the brush.
      delete shadowBrush;
   }
private void AddShadow(PaintEventArgs e)
{

    // Create two SizeF objects.
    SizeF shadowSize = listBox1.Size;
    SizeF addSize = new SizeF(10.5F, 20.8F);

    // Add them together and save the result in shadowSize.
    shadowSize = shadowSize + addSize;

    // Get the location of the ListBox and convert it to a PointF.
    PointF shadowLocation = listBox1.Location;

    // Add two points to get a new location.
    shadowLocation = shadowLocation + new Size(5, 5);

    // Create a rectangleF. 
    RectangleF rectFToFill = 
        new RectangleF(shadowLocation, shadowSize);

    // Create a custom brush using a semi-transparent color, and 
    // then fill in the rectangle.
    Color customColor = Color.FromArgb(50, Color.Gray);
    SolidBrush shadowBrush = new SolidBrush(customColor);
    e.Graphics.FillRectangles(shadowBrush, new RectangleF[]{rectFToFill});

    // Dispose of the brush.
    shadowBrush.Dispose();
}
Private Sub AddShadow(ByVal e As PaintEventArgs)

    ' Create two SizeF objects.
    Dim shadowSize As SizeF = Size.op_Implicit(listBox1.Size)
    Dim addSize As New SizeF(10.5F, 20.8F)

    ' Add them together and save the result in shadowSize.
    shadowSize = SizeF.op_Addition(shadowSize, addSize)

    ' Get the location of the ListBox and convert it to a PointF.
    Dim shadowLocation As PointF = Point.op_Implicit(listBox1.Location)

    ' Add a Size to the Point to get a new location.
    shadowLocation = PointF.op_Addition(shadowLocation, New Size(5, 5))

    ' Create a rectangleF. 
    Dim rectFToFill As New RectangleF(shadowLocation, shadowSize)

    ' Create a custom brush using a semi-transparent color, and 
    ' then fill in the rectangle.
    Dim customColor As Color = Color.FromArgb(50, Color.Gray)
    Dim shadowBrush As SolidBrush = New SolidBrush(customColor)
    e.Graphics.FillRectangles(shadowBrush, _
        New RectangleF() {rectFToFill})

    ' Dispose of the brush.
    shadowBrush.Dispose()
End Sub

注解

结构的单位 SizeF 取决于 PageUnit 用于绘制的对象和 PageScale 设置 Graphics

构造函数

名称 说明
SizeF(PointF)

从指定SizeF结构初始化结构的新实例PointF

SizeF(Single, Single)

从指定的维度初始化结构的新实例 SizeF

SizeF(SizeF)

从指定的现有SizeF结构初始化结构的新实例SizeF

SizeF(Vector2)

从指定的SizeF结构初始化新实例Vector2

字段

名称 说明
Empty

获取一个SizeF结构,其HeightWidth值为 0。

属性

名称 说明
Height

获取或设置此 SizeF 结构的垂直组件。

IsEmpty

获取一个值,该值指示此 SizeF 结构是否具有零宽度和高度。

Width

获取或设置此 SizeF 结构的水平分量。

方法

名称 说明
Add(SizeF, SizeF)

将一个结构的宽度和高度添加到另一 SizeFSizeF 结构的宽度和高度。

Equals(Object)

测试指定对象是否与 SizeFSizeF 结构具有相同维度的结构。

Equals(SizeF)

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

GetHashCode()

返回此 Size 结构的哈希代码。

Subtract(SizeF, SizeF)

从另一个结构的宽度和高度中减去一SizeFSizeF结构的宽度和高度。

ToPointF()

SizeF 结构转换为 PointF 结构。

ToSize()

SizeF 结构转换为 Size 结构。

ToString()

创建表示此 SizeF 结构的人类可读字符串。

ToVector2()

从此Vector2创建一个新SizeF项。

运营商

名称 说明
Addition(SizeF, SizeF)

将一个结构的宽度和高度添加到另一 SizeFSizeF 结构的宽度和高度。

Division(SizeF, Single)

SizeF除以指定的单精度浮点数。

Equality(SizeF, SizeF)

测试两个 SizeF 结构是否相等。

Explicit(SizeF to PointF)

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

Explicit(SizeF to Vector2)

将指定的 SizeF 值转换为 Vector2.

Explicit(Vector2 to SizeF)

将指定的 Vector2 值转换为 SizeF.

Inequality(SizeF, SizeF)

测试两 SizeF 个结构是否不同。

Multiply(Single, SizeF)

将指定的单精度浮点数乘以指定的 SizeF

Multiply(SizeF, Single)

将指定的 SizeF 单精度浮点数相乘。

Subtraction(SizeF, SizeF)

从另一个结构的宽度和高度中减去一SizeFSizeF结构的宽度和高度。

适用于