Control.Region Vlastnost
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í.
Získá nebo nastaví oblast okna přidružená k ovládacímu prvku.
public:
property System::Drawing::Region ^ Region { System::Drawing::Region ^ get(); void set(System::Drawing::Region ^ value); };
[System.ComponentModel.Browsable(false)]
public System.Drawing.Region Region { get; set; }
[System.ComponentModel.Browsable(false)]
public System.Drawing.Region? Region { get; set; }
[<System.ComponentModel.Browsable(false)>]
member this.Region : System.Drawing.Region with get, set
Public Property Region As Region
Hodnota vlastnosti
Okno Region přidružené k ovládacímu prvku.
- Atributy
Příklady
Následující příklad kódu ukazuje, jak použít Region vlastnost vytvořením kulatého tlačítka. Pokud chcete spustit příklad, vložte následující kód do formuláře obsahujícího tlačítko s názvem roundButton
. Tento příklad vyžaduje, aby byla Paint událost připojená k obslužné rutině události definované v příkladu.
private:
// This method will change the square button to a circular button by
// creating a new circle-shaped GraphicsPath object and setting it
// to the RoundButton objects region.
void roundButton_Paint( Object^ sender,
System::Windows::Forms::PaintEventArgs^ e )
{
System::Drawing::Drawing2D::GraphicsPath^ buttonPath =
gcnew System::Drawing::Drawing2D::GraphicsPath;
// Set a new rectangle to the same size as the button's
// ClientRectangle property.
System::Drawing::Rectangle newRectangle = roundButton->ClientRectangle;
// Decrease the size of the rectangle.
newRectangle.Inflate( -10, -10 );
// Draw the button's border.
e->Graphics->DrawEllipse( System::Drawing::Pens::Black, newRectangle );
// Increase the size of the rectangle to include the border.
newRectangle.Inflate( 1, 1 );
// Create a circle within the new rectangle.
buttonPath->AddEllipse( newRectangle );
// Set the button's Region property to the newly created
// circle region.
roundButton->Region = gcnew System::Drawing::Region( buttonPath );
}
// This method will change the square button to a circular button by
// creating a new circle-shaped GraphicsPath object and setting it
// to the RoundButton objects region.
private void roundButton_Paint(object sender,
System.Windows.Forms.PaintEventArgs e)
{
System.Drawing.Drawing2D.GraphicsPath buttonPath =
new System.Drawing.Drawing2D.GraphicsPath();
// Set a new rectangle to the same size as the button's
// ClientRectangle property.
System.Drawing.Rectangle newRectangle = roundButton.ClientRectangle;
// Decrease the size of the rectangle.
newRectangle.Inflate(-10, -10);
// Draw the button's border.
e.Graphics.DrawEllipse(System.Drawing.Pens.Black, newRectangle);
// Increase the size of the rectangle to include the border.
newRectangle.Inflate( 1, 1);
// Create a circle within the new rectangle.
buttonPath.AddEllipse(newRectangle);
// Set the button's Region property to the newly created
// circle region.
roundButton.Region = new System.Drawing.Region(buttonPath);
}
' This method will change the square button to a circular button by
' creating a new circle-shaped GraphicsPath object and setting it
' to the RoundButton objects region.
Private Sub roundButton_Paint(ByVal sender As Object, _
ByVal e As System.Windows.Forms.PaintEventArgs) Handles roundButton.Paint
Dim buttonPath As New System.Drawing.Drawing2D.GraphicsPath
' Set a new rectangle to the same size as the button's
' ClientRectangle property.
Dim newRectangle As Rectangle = roundButton.ClientRectangle
' Decrease the size of the rectangle.
newRectangle.Inflate(-10, -10)
' Draw the button's border.
'e.Graphics.DrawEllipse(System.Drawing.Pens.Black, newRectangle)
'Increase the size of the rectangle to include the border.
newRectangle.Inflate(1, 1)
' Create a circle within the new rectangle.
buttonPath.AddEllipse(newRectangle)
e.Graphics.DrawPath(Pens.Black, buttonPath)
' Set the button's Region property to the newly created
' circle region.
roundButton.Region = New System.Drawing.Region(buttonPath)
End Sub
Poznámky
Oblast okna je kolekce pixelů v rámci okna, kde operační systém umožňuje kreslení. Operační systém nezobrazuje žádnou část okna, která leží mimo oblast okna. Souřadnice oblasti ovládacího prvku jsou relativní k levému hornímu rohu ovládacího prvku, nikoli k oblasti klienta ovládacího prvku.
Poznámka
Kolekce pixelů obsažená v oblasti může být nesousoucí.