Graphics.ResetClip Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Obnoví oblast klipů tohoto Graphics do nekonečné oblasti.
public:
void ResetClip();
public void ResetClip ();
member this.ResetClip : unit -> unit
Public Sub ResetClip ()
Příklady
Následující příklad kódu je určený pro použití s Windows Forms a vyžaduje PaintEventArgse
, což je parametr obslužné rutiny události Paint. Kód provede následující akce:
Vytvoří obdélník s levým horním rohem (0, 0) a nastaví oblast výřezu na tento obdélník.
Vytvoří druhý obdélník s levým horním rohem (100, 100) a nastaví oblast výřezu na průsečík tohoto obdélníku a aktuální oblast výřezu (první obdélník).
Vyplní velký obdélník, který obsahuje oba předchozí obdélníky, plným modrým štětcem.
Obnoví oblast výřezu na neomezenou.
Nakreslí obdélníky kolem dvou oblastí výřezu; používá černé pero pro první obdélník výřezu a červené pero pro druhou oblast výřezu.
Výsledkem je, že pouze průsečík dvou obdélníků je vyplněn modrým.
public:
void IntersectClipRectangleF2( PaintEventArgs^ e )
{
// Set clipping region.
Rectangle clipRect = Rectangle(0,0,200,200);
e->Graphics->SetClip( clipRect );
// Update clipping region to intersection of
// existing region with specified rectangle.
RectangleF intersectRectF = RectangleF(100.0F,100.0F,200.0F,200.0F);
e->Graphics->IntersectClip( intersectRectF );
// Fill rectangle to demonstrate effective clipping region.
e->Graphics->FillRectangle( gcnew SolidBrush( Color::Blue ), 0, 0, 500, 500 );
// Reset clipping region to infinite.
e->Graphics->ResetClip();
// Draw clipRect and intersectRect to screen.
e->Graphics->DrawRectangle( gcnew Pen( Color::Black ), clipRect );
e->Graphics->DrawRectangle( gcnew Pen( Color::Red ), Rectangle::Round( intersectRectF ) );
}
private void IntersectClipRectangleF2(PaintEventArgs e)
{
// Set clipping region.
Rectangle clipRect = new Rectangle(0, 0, 200, 200);
e.Graphics.SetClip(clipRect);
// Update clipping region to intersection of
// existing region with specified rectangle.
RectangleF intersectRectF = new RectangleF(100.0F, 100.0F, 200.0F, 200.0F);
e.Graphics.IntersectClip(intersectRectF);
// Fill rectangle to demonstrate effective clipping region.
e.Graphics.FillRectangle(new SolidBrush(Color.Blue), 0, 0, 500, 500);
// Reset clipping region to infinite.
e.Graphics.ResetClip();
// Draw clipRect and intersectRect to screen.
e.Graphics.DrawRectangle(new Pen(Color.Black), clipRect);
e.Graphics.DrawRectangle(new Pen(Color.Red), Rectangle.Round(intersectRectF));
}
Private Sub IntersectClipRectangleF2(ByVal e As PaintEventArgs)
' Set clipping region.
Dim clipRect As New Rectangle(0, 0, 200, 200)
e.Graphics.SetClip(clipRect)
' Update clipping region to intersection of
' existing region with specified rectangle.
Dim intersectRectF As New RectangleF(100.0F, 100.0F, 200.0F, 200.0F)
e.Graphics.IntersectClip(intersectRectF)
' Fill rectangle to demonstrate effective clipping region.
e.Graphics.FillRectangle(New SolidBrush(Color.Blue), 0, 0, _
500, 500)
' Reset clipping region to infinite.
e.Graphics.ResetClip()
' Draw clipRect and intersectRect to screen.
e.Graphics.DrawRectangle(New Pen(Color.Black), clipRect)
e.Graphics.DrawRectangle(New Pen(Color.Red), _
Rectangle.Round(intersectRectF))
End Sub
Poznámky
Pokud je oblast výřezu Graphics nekonečná, položky, které tato Graphics nakreslí, nejsou oříznuty.