Udostępnij za pośrednictwem


Region Klasa

Definicja

Opisuje wnętrze kształtu graficznego składającego się z prostokątów i ścieżek. Tej klasy nie można dziedziczyć.

public ref class Region sealed : MarshalByRefObject, IDisposable
public sealed class Region : MarshalByRefObject, IDisposable
[System.Runtime.InteropServices.ComVisible(false)]
public sealed class Region : MarshalByRefObject, IDisposable
type Region = class
    inherit MarshalByRefObject
    interface IDisposable
[<System.Runtime.InteropServices.ComVisible(false)>]
type Region = class
    inherit MarshalByRefObject
    interface IDisposable
Public NotInheritable Class Region
Inherits MarshalByRefObject
Implements IDisposable
Dziedziczenie
Atrybuty
Implementuje

Przykłady

Poniższy przykład kodu jest przeznaczony do użycia z formularzami Systemu Windows i wymaga PaintEventArgse, który jest parametrem programu obsługi zdarzeń Paint. W przykładzie kodu pokazano, jak używać Data z jednego obiektu RegionData w celu ustawienia Data dla innego RegionData.

private:
   void DemonstrateRegionData2( PaintEventArgs^ e )
   {
      //Create a simple region.
      System::Drawing::Region^ region1 = gcnew System::Drawing::Region( Rectangle(10,10,100,100) );

      // Extract the region data.
      System::Drawing::Drawing2D::RegionData^ region1Data = region1->GetRegionData();
      array<Byte>^data1;
      data1 = region1Data->Data;

      // Create a second region.
      System::Drawing::Region^ region2 = gcnew System::Drawing::Region;

      // Get the region data for the second region.
      System::Drawing::Drawing2D::RegionData^ region2Data = region2->GetRegionData();

      // Set the Data property for the second region to the Data from the first region.
      region2Data->Data = data1;

      // Construct a third region using the modified RegionData of the second region.
      System::Drawing::Region^ region3 = gcnew System::Drawing::Region( region2Data );

      // Dispose of the first and second regions.
      delete region1;
      delete region2;

      // Call ExcludeClip passing in the third region.
      e->Graphics->ExcludeClip( region3 );

      // Fill in the client rectangle.
      e->Graphics->FillRectangle( Brushes::Red, this->ClientRectangle );
      delete region3;
   }
private void DemonstrateRegionData2(PaintEventArgs e)
{

    //Create a simple region.
    Region region1 = new Region(new Rectangle(10, 10, 100, 100));

    // Extract the region data.
    System.Drawing.Drawing2D.RegionData region1Data = region1.GetRegionData();
    byte[] data1;
    data1 = region1Data.Data;

    // Create a second region.
    Region region2 = new Region();

    // Get the region data for the second region.
    System.Drawing.Drawing2D.RegionData region2Data = region2.GetRegionData();

    // Set the Data property for the second region to the Data from the first region.
    region2Data.Data = data1;

    // Construct a third region using the modified RegionData of the second region.
    Region region3 = new Region(region2Data);

    // Dispose of the first and second regions.
    region1.Dispose();
    region2.Dispose();

    // Call ExcludeClip passing in the third region.
    e.Graphics.ExcludeClip(region3);

    // Fill in the client rectangle.
    e.Graphics.FillRectangle(Brushes.Red, this.ClientRectangle);

    region3.Dispose();
}
Private Sub DemonstrateRegionData2(ByVal e As PaintEventArgs)

    'Create a simple region.
    Dim region1 As New Region(New Rectangle(10, 10, 100, 100))

    ' Extract the region data.
    Dim region1Data As System.Drawing.Drawing2D.RegionData = region1.GetRegionData
    Dim data1() As Byte
    data1 = region1Data.Data

    ' Create a second region.
    Dim region2 As New Region

    ' Get the region data for the second region.
    Dim region2Data As System.Drawing.Drawing2D.RegionData = region2.GetRegionData()

    ' Set the Data property for the second region to the Data from the first region.
    region2Data.Data = data1

    ' Construct a third region using the modified RegionData of the second region.
    Dim region3 As New Region(region2Data)

    ' Dispose of the first and second regions.
    region1.Dispose()
    region2.Dispose()

    ' Call ExcludeClip passing in the third region.
    e.Graphics.ExcludeClip(region3)

    ' Fill in the client rectangle.
    e.Graphics.FillRectangle(Brushes.Red, Me.ClientRectangle)

    region3.Dispose()

End Sub

Uwagi

Region jest skalowalny, ponieważ jego współrzędne są określone we współrzędnych świata. Na powierzchni rysunku jego wnętrze zależy jednak od rozmiaru i kształtu pikseli reprezentujących go. Aplikacja może używać regionów do tworzenia wycinków danych wyjściowych operacji rysowania. Te regiony są nazywane regionami wycinków. Aby uzyskać więcej informacji na temat używania regionów do wycinkowania, zobacz How to: Use Clipping with a Region.

Aplikacja może również używać regionów w operacjach testowania trafień, takich jak sprawdzanie, czy punkt lub prostokąt przecina region. Aby uzyskać więcej informacji na temat używania regionów do testowania trafień, zobacz How to: Use Hit Testing with a Region(Jak używać testowania trafień w regionie).

Aplikacja może wypełnić region przy użyciu metody Graphics.FillRegion i obiektu Brush.

Nuta

W wersjach .NET 6 i nowszych System.Drawing.Common, który zawiera ten typ, jest obsługiwany tylko w systemach operacyjnych Windows. Użycie tego typu w aplikacjach międzyplatformowych powoduje ostrzeżenia w czasie kompilacji i wyjątki czasu wykonywania. Aby uzyskać więcej informacji, zobacz System.Drawing.Common obsługiwane tylko w systemie Windows.

Konstruktory

Region()

Inicjuje nowy Region.

Region(GraphicsPath)

Inicjuje nową Region z określonym GraphicsPath.

Region(Rectangle)

Inicjuje nową Region z określonej struktury Rectangle.

Region(RectangleF)

Inicjuje nową Region z określonej struktury RectangleF.

Region(RegionData)

Inicjuje nowe Region z określonych danych.

Metody

Clone()

Tworzy dokładną kopię tego Region.

Complement(GraphicsPath)

Aktualizuje tę Region, aby zawierała część określonego GraphicsPath, która nie przecina się z tym Region.

Complement(Rectangle)

Aktualizuje tę Region, aby zawierała część określonej struktury Rectangle, która nie przecina się z tą Region.

Complement(RectangleF)

Aktualizuje tę Region, aby zawierała część określonej struktury RectangleF, która nie przecina się z tą Region.

Complement(Region)

Aktualizuje tę Region, aby zawierała część określonego Region, która nie przecina się z tym Region.

CreateObjRef(Type)

Tworzy obiekt zawierający wszystkie istotne informacje wymagane do wygenerowania serwera proxy używanego do komunikowania się z obiektem zdalnym.

(Odziedziczone po MarshalByRefObject)
Dispose()

Zwalnia wszystkie zasoby używane przez tę Region.

Equals(Object)

Określa, czy określony obiekt jest równy bieżącemu obiektowi.

(Odziedziczone po Object)
Equals(Region, Graphics)

Sprawdza, czy określony Region jest identyczny z tym Region na określonej powierzchni rysunku.

Exclude(GraphicsPath)

Aktualizuje tę Region, aby zawierała tylko część jego wnętrza, która nie przecina się z określonym GraphicsPath.

Exclude(Rectangle)

Aktualizuje tę Region, aby zawierała tylko część jego wnętrza, która nie przecina się z określoną strukturą Rectangle.

Exclude(RectangleF)

Aktualizuje tę Region, aby zawierała tylko część jego wnętrza, która nie przecina się z określoną strukturą RectangleF.

Exclude(Region)

Aktualizuje tę Region, aby zawierała tylko część jego wnętrza, która nie przecina się z określonym Region.

Finalize()

Umożliwia obiektowi próbę zwolnienia zasobów i wykonania innych operacji oczyszczania przed odzyskaniem przez odzyskiwanie pamięci.

FromHrgn(IntPtr)

Inicjuje nową Region z dojścia do określonego istniejącego regionu GDI.

GetBounds(Graphics)

Pobiera strukturę RectangleF reprezentującą prostokąt związany z tym Region na powierzchni rysunku obiektu Graphics.

GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetHrgn(Graphics)

Zwraca uchwyt systemu Windows do tej Region w określonym kontekście graficznym.

GetLifetimeService()
Przestarzałe.

Pobiera bieżący obiekt usługi okresu istnienia, który kontroluje zasady okresu istnienia dla tego wystąpienia.

(Odziedziczone po MarshalByRefObject)
GetRegionData()

Zwraca RegionData, który reprezentuje informacje opisujące tę Region.

GetRegionScans(Matrix)

Zwraca tablicę struktur RectangleF, które przybliżą tę Region po zastosowaniu określonego przekształcenia macierzy.

GetType()

Pobiera Type bieżącego wystąpienia.

(Odziedziczone po Object)
InitializeLifetimeService()
Przestarzałe.

Uzyskuje obiekt usługi okresu istnienia w celu kontrolowania zasad okresu istnienia dla tego wystąpienia.

(Odziedziczone po MarshalByRefObject)
Intersect(GraphicsPath)

Aktualizuje tę Region do przecięć się z określonym GraphicsPath.

Intersect(Rectangle)

Aktualizuje to Region do przecięcia się z określoną strukturą Rectangle.

Intersect(RectangleF)

Aktualizuje to Region do przecięcia się z określoną strukturą RectangleF.

Intersect(Region)

Aktualizuje tę Region do przecięć się z określonym Region.

IsEmpty(Graphics)

Sprawdza, czy ta Region ma puste wnętrze na określonej powierzchni rysunkowej.

IsInfinite(Graphics)

Sprawdza, czy ta Region ma nieskończone wnętrze na określonej powierzchni rysunku.

IsVisible(Int32, Int32, Graphics)

Sprawdza, czy określony punkt znajduje się w tym obiekcie Region podczas rysowania przy użyciu określonego obiektu Graphics.

IsVisible(Int32, Int32, Int32, Int32)

Sprawdza, czy jakakolwiek część określonego prostokąta znajduje się w tym Region.

IsVisible(Int32, Int32, Int32, Int32, Graphics)

Sprawdza, czy jakakolwiek część określonego prostokąta znajduje się w tym Region podczas rysowania przy użyciu określonego Graphics.

IsVisible(Point)

Sprawdza, czy określona struktura Point znajduje się w tym Region.

IsVisible(Point, Graphics)

Sprawdza, czy określona struktura Point znajduje się w tym Region podczas rysowania przy użyciu określonego Graphics.

IsVisible(PointF)

Sprawdza, czy określona struktura PointF znajduje się w tym Region.

IsVisible(PointF, Graphics)

Sprawdza, czy określona struktura PointF znajduje się w tym Region podczas rysowania przy użyciu określonego Graphics.

IsVisible(Rectangle)

Sprawdza, czy jakakolwiek część określonej struktury Rectangle znajduje się w tym Region.

IsVisible(Rectangle, Graphics)

Sprawdza, czy jakakolwiek część określonej struktury Rectangle znajduje się w tej Region podczas rysowania przy użyciu określonego Graphics.

IsVisible(RectangleF)

Sprawdza, czy jakakolwiek część określonej struktury RectangleF znajduje się w tym Region.

IsVisible(RectangleF, Graphics)

Sprawdza, czy jakakolwiek część określonej struktury RectangleF znajduje się w tej Region podczas rysowania przy użyciu określonego Graphics.

IsVisible(Single, Single)

Sprawdza, czy określony punkt znajduje się w tym Region.

IsVisible(Single, Single, Graphics)

Sprawdza, czy określony punkt znajduje się w tym Region podczas rysowania przy użyciu określonego Graphics.

IsVisible(Single, Single, Single, Single)

Sprawdza, czy jakakolwiek część określonego prostokąta znajduje się w tym Region.

IsVisible(Single, Single, Single, Single, Graphics)

Sprawdza, czy jakakolwiek część określonego prostokąta znajduje się w tym Region podczas rysowania przy użyciu określonego Graphics.

MakeEmpty()

Inicjuje to Region do pustego wnętrza.

MakeInfinite()

Inicjuje ten obiekt Region nieskończonym wnętrzem.

MemberwiseClone()

Tworzy płytkią kopię bieżącego Object.

(Odziedziczone po Object)
MemberwiseClone(Boolean)

Tworzy płytkią kopię bieżącego obiektu MarshalByRefObject.

(Odziedziczone po MarshalByRefObject)
ReleaseHrgn(IntPtr)

Zwalnia uchwyt Region.

ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)
Transform(Matrix)

Przekształca tę Region przez określony Matrix.

Translate(Int32, Int32)

Przesunięcie współrzędnych tego Region o określoną kwotę.

Translate(Single, Single)

Przesunięcie współrzędnych tego Region o określoną kwotę.

Union(GraphicsPath)

Aktualizuje to Region do samego związku i określonego GraphicsPath.

Union(Rectangle)

Aktualizuje tę Region do samej unii i określonej struktury Rectangle.

Union(RectangleF)

Aktualizuje tę Region do samej unii i określonej struktury RectangleF.

Union(Region)

Aktualizuje to Region do samego związku i określonego Region.

Xor(GraphicsPath)

Aktualizuje to Region do unii minus skrzyżowanie siebie z określonym GraphicsPath.

Xor(Rectangle)

Aktualizuje tę Region do unii, pomniejszonej o strukturę określonego Rectangle.

Xor(RectangleF)

Aktualizuje tę Region do unii, pomniejszonej o strukturę określonego RectangleF.

Xor(Region)

Aktualizuje to Region do unii minus skrzyżowanie siebie z określonym Region.

Dotyczy

Zobacz też