Поделиться через


RegionData Класс

Определение

Инкапсулирует данные, составляющие объект Region. Этот класс не может быть унаследован.

public ref class RegionData sealed
public sealed class RegionData
type RegionData = class
Public NotInheritable Class RegionData
Наследование
RegionData

Примеры

Следующий пример предназначен для использования с Windows Forms и требует PaintEventArgse, который является параметром обработчика событий Paint. Код выполняет следующие действия:

  • Создает прямоугольник и рисует его на экран в черном цвете.

  • Создает область с помощью прямоугольника.

  • Возвращает RegionData.

  • Рисует данные региона (массив байтов) на экран с помощью вспомогательной функции DisplayRegionData.

public:
   void GetRegionDataExample( PaintEventArgs^ e )
   {
      // Create a rectangle and draw it to the screen in black.
      Rectangle regionRect = Rectangle(20,20,100,100);
      e->Graphics->DrawRectangle( Pens::Black, regionRect );

      // Create a region using the first rectangle.
      System::Drawing::Region^ myRegion = gcnew System::Drawing::Region( regionRect );

      // Get the RegionData for this region.
      RegionData^ myRegionData = myRegion->GetRegionData();
      int myRegionDataLength = myRegionData->Data->Length;
      DisplayRegionData( e, myRegionDataLength, myRegionData );
   }

   // THIS IS A HELPER FUNCTION FOR GetRegionData.
   void DisplayRegionData( PaintEventArgs^ e, int len, RegionData^ dat )
   {
      // Display the result.
      int i;
      float x = 20,y = 140;
      System::Drawing::Font^ myFont = gcnew System::Drawing::Font( "Arial",8 );
      SolidBrush^ myBrush = gcnew SolidBrush( Color::Black );
      e->Graphics->DrawString( "myRegionData = ", myFont, myBrush, PointF(x,y) );
      y = 160;
      for ( i = 0; i < len; i++ )
      {
         if ( x > 300 )
         {
            y += 20;
            x = 20;
         }
         e->Graphics->DrawString( dat->Data[ i ].ToString(), myFont, myBrush, PointF(x,y) );
         x += 30;
      }
   }
public void GetRegionDataExample(PaintEventArgs e)
{
             
    // Create a rectangle and draw it to the screen in black.
    Rectangle regionRect = new Rectangle(20, 20, 100, 100);
    e.Graphics.DrawRectangle(Pens.Black, regionRect);
             
    // Create a region using the first rectangle.
    Region myRegion = new Region(regionRect);
             
    // Get the RegionData for this region.
    RegionData myRegionData = myRegion.GetRegionData();
    int myRegionDataLength = myRegionData.Data.Length;
    DisplayRegionData(e, myRegionDataLength, myRegionData);
}
             
// THIS IS A HELPER FUNCTION FOR GetRegionData.
public void DisplayRegionData(PaintEventArgs e,
    int len,
    RegionData dat)
{
             
    // Display the result.
    int i;
    float x = 20, y = 140;
    Font myFont = new Font("Arial", 8);
    SolidBrush myBrush = new SolidBrush(Color.Black);
    e.Graphics.DrawString("myRegionData = ",
        myFont,
        myBrush,
        new PointF(x, y));
    y = 160;
    for(i = 0; i < len; i++)
    {
        if(x > 300)
        {
            y += 20;
            x = 20;
        }
        e.Graphics.DrawString(dat.Data[i].ToString(),
            myFont,
            myBrush,
            new PointF(x, y));
        x += 30;
    }
}
Public Sub GetRegionDataExample(ByVal e As PaintEventArgs)

    ' Create the first rectangle and draw it to the screen in black.
    Dim regionRect As New Rectangle(20, 20, 100, 100)
    e.Graphics.DrawRectangle(Pens.Black, regionRect)

    ' Create a region using the first rectangle.
    Dim myRegion As New [Region](regionRect)

    ' Get the RegionData for this region.
    Dim myRegionData As RegionData = myRegion.GetRegionData()
    Dim myRegionDataLength As Integer = myRegionData.Data.Length
    DisplayRegionData(e, myRegionDataLength, myRegionData)
End Sub

' Helper Function for GetRegionData.
Public Sub DisplayRegionData(ByVal e As PaintEventArgs, ByVal len As Integer, _
ByVal dat As RegionData)

    ' Display the result.
    Dim i As Integer
    Dim x As Single = 20
    Dim y As Single = 140
    Dim myFont As New Font("Arial", 8)
    Dim myBrush As New SolidBrush(Color.Black)
    e.Graphics.DrawString("myRegionData = ", myFont, myBrush, _
    New PointF(x, y))
    y = 160
    For i = 0 To len - 1
        If x > 300 Then
            y += 20
            x = 20
        End If
        e.Graphics.DrawString(dat.Data(i).ToString(), myFont, _
        myBrush, New PointF(x, y))
        x += 30
    Next i
End Sub

Свойства

Data

Возвращает или задает массив байтов, указывающий объект Region.

Методы

Equals(Object)

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

(Унаследовано от Object)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetType()

Возвращает Type текущего экземпляра.

(Унаследовано от Object)
MemberwiseClone()

Создает неглубокую копию текущей Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

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