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
Наследование
Атрибуты
Реализации

Примеры

В следующем примере кода к теню добавляется тень ListBox с помощью следующих элементов:

Этот пример предназначен для использования с формой Windows Form. Чтобы запустить этот пример, вставьте этот код в форму и вызовите 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 структуры зависит от PageUnitPageScale параметров объекта, который используется для Graphics рисования.

Конструкторы

Имя Описание
SizeF(PointF)

Инициализирует новый экземпляр SizeF структуры из указанной PointF структуры.

SizeF(Single, Single)

Инициализирует новый экземпляр SizeF структуры из указанных измерений.

SizeF(SizeF)

Инициализирует новый экземпляр структуры из указанной SizeF существующей SizeF структуры.

SizeF(Vector2)

Инициализирует новый экземпляр SizeF структуры из указанного Vector2.

Поля

Имя Описание
Empty

Возвращает структуру SizeF с значением Height 0 и Width значением 0.

Свойства

Имя Описание
Height

Возвращает или задает вертикальный компонент этой SizeF структуры.

IsEmpty

Возвращает значение, указывающее, имеет ли эта SizeF структура нулевую ширину и высоту.

Width

Возвращает или задает горизонтальный компонент этой SizeF структуры.

Методы

Имя Описание
Add(SizeF, SizeF)

Добавляет ширину и высоту одной SizeF структуры в ширину и высоту другой SizeF структуры.

Equals(Object)

Проверяет, является ли указанный объект структурой SizeF с теми же измерениями, что и эта SizeF структура.

Equals(SizeF)

Указывает, равен ли текущий объект другому объекту того же типа.

GetHashCode()

Возвращает хэш-код для этой Size структуры.

Subtract(SizeF, SizeF)

Вычитает ширину и высоту одной SizeF структуры из ширины и высоты другой SizeF структуры.

ToPointF()

Преобразует структуру SizeF в структуру PointF .

ToSize()

Преобразует структуру SizeF в структуру Size .

ToString()

Создает удобочитаемую пользователем строку, представляющую эту SizeF структуру.

ToVector2()

Создает новое из Vector2 этого SizeF.

Операторы

Имя Описание
Addition(SizeF, SizeF)

Добавляет ширину и высоту одной SizeF структуры в ширину и высоту другой SizeF структуры.

Division(SizeF, Single)

Делит указанный SizeF номер с плавающей запятой с одной точностью.

Equality(SizeF, SizeF)

Проверяет, равны ли две SizeF структуры.

Explicit(SizeF to PointF)

Преобразует указанную SizeF структуру в структуру PointF .

Explicit(SizeF to Vector2)

Преобразует указанный SizeFVector2объект в .

Explicit(Vector2 to SizeF)

Преобразует указанный Vector2SizeFобъект в .

Inequality(SizeF, SizeF)

Проверяет, отличаются ли две SizeF структуры.

Multiply(Single, SizeF)

Умножает указанное число с плавающей запятой с одной точностью на указанный SizeF.

Multiply(SizeF, Single)

Умножает указанное SizeF число с плавающей запятой с одной точностью.

Subtraction(SizeF, SizeF)

Вычитает ширину и высоту одной SizeF структуры из ширины и высоты другой SizeF структуры.

Применяется к