Ler em inglês

Partilhar via


Graphics.ResetClip Método

Definição

Redefine a região de clipe desta Graphics para uma região infinita.

C#
public void ResetClip();

Exemplos

O exemplo de código a seguir foi projetado para uso com o Windows Forms e requer PaintEventArgse, que é um parâmetro do manipulador de eventos Paint. O código executa as seguintes ações:

  • Cria um retângulo com canto superior esquerdo em (0, 0) e define a região de recorte como este retângulo.

  • Cria um segundo retângulo com canto superior esquerdo em (100, 100) e define a região de recorte para a interseção deste retângulo e a região de recorte atual (o primeiro retângulo).

  • Preenche um retângulo grande que inclui os dois retângulos anteriores com um pincel azul sólido.

  • Redefine a região de recorte como infinita.

  • Desenha retângulos em torno das duas regiões de recorte; ele usa uma caneta preta para o primeiro retângulo de recorte e uma caneta vermelha para a segunda região de recorte.

O resultado é que apenas a interseção dos dois retângulos é preenchida com azul.

C#
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));
}

Comentários

Quando a região de recorte de um Graphics é infinita, os itens que esse Graphics desenha não são recortados.

Aplica-se a

Produto Versões
.NET 8 (package-provided), 9 (package-provided), 10 (package-provided)
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0 (package-provided)
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10