ControlPaint.FillReversibleRectangle(Rectangle, Color) Metódus
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Kitöltött, megfordítható téglalapot rajzol a képernyőn.
public:
static void FillReversibleRectangle(System::Drawing::Rectangle rectangle, System::Drawing::Color backColor);
public static void FillReversibleRectangle(System.Drawing.Rectangle rectangle, System.Drawing.Color backColor);
static member FillReversibleRectangle : System.Drawing.Rectangle * System.Drawing.Color -> unit
Public Shared Sub FillReversibleRectangle (rectangle As Rectangle, backColor As Color)
Paraméterek
Példák
Az alábbi példakód a FillReversibleRectangle metódus használatát mutatja be. A példa futtatásához illessze be a következő kódot egy űrlapba. Adjon hozzá egy gombot Button2 az űrlaphoz, és győződjön meg arról, hogy minden esemény csatlakoztatva van az eseménykezelőkhöz.
//When the mouse hovers over Button2, its ClientRectangle is filled.
void Button2_MouseHover( Object^ sender, System::EventArgs^ /*e*/ )
{
Control^ senderControl = dynamic_cast<Control^>(sender);
Rectangle screenRectangle = senderControl->RectangleToScreen( senderControl->ClientRectangle );
ControlPaint::FillReversibleRectangle( screenRectangle, senderControl->BackColor );
}
// When the mouse leaves Button2, its ClientRectangle is cleared by
// calling the FillReversibleRectangle method again.
void Button2_MouseLeave( Object^ sender, System::EventArgs^ /*e*/ )
{
Control^ senderControl = dynamic_cast<Control^>(sender);
Rectangle screenRectangle = senderControl->RectangleToScreen( senderControl->ClientRectangle );
ControlPaint::FillReversibleRectangle( screenRectangle, senderControl->BackColor );
}
//When the mouse hovers over Button2, its ClientRectangle is filled.
private void Button2_MouseHover(object sender, System.EventArgs e)
{
Control senderControl = (Control) sender;
Rectangle screenRectangle = senderControl.RectangleToScreen(
senderControl.ClientRectangle);
ControlPaint.FillReversibleRectangle(screenRectangle,
senderControl.BackColor);
}
// When the mouse leaves Button2, its ClientRectangle is cleared by
// calling the FillReversibleRectangle method again.
private void Button2_MouseLeave(object sender, System.EventArgs e)
{
Control senderControl = (Control) sender;
Rectangle screenRectangle = senderControl.RectangleToScreen(
senderControl.ClientRectangle);
ControlPaint.FillReversibleRectangle(screenRectangle,
senderControl.BackColor);
}
' When the mouse hovers over Button2, its ClientRectangle is filled.
Private Sub Button2_MouseHover(ByVal sender As Object, _
ByVal e As System.EventArgs) Handles Button2.MouseHover
Dim senderControl As Control = CType(sender, Control)
Dim screenRectangle As Rectangle = _
senderControl.RectangleToScreen(senderControl.ClientRectangle)
ControlPaint.FillReversibleRectangle(screenRectangle, _
senderControl.BackColor)
End Sub
' When the mouse leaves Button2, its ClientRectangle is cleared by
' calling the FillReversibleRectangle method again.
Private Sub Button2_MouseLeave(ByVal sender As Object, _
ByVal e As System.EventArgs) Handles Button2.MouseLeave
Dim senderControl As Control = CType(sender, Control)
Dim screenRectangle As Rectangle = _
senderControl.RectangleToScreen(senderControl.ClientRectangle)
ControlPaint.FillReversibleRectangle(screenRectangle, _
senderControl.BackColor)
End Sub
Megjegyzések
A backColor paraméter a téglalap kitöltési színének kiszámítására szolgál, hogy mindig látható legyen a háttérben.
Ennek a módszernek az eredménye megfordítható ugyanazzal a téglalappal. Ha téglalapot rajzol ezzel a módszerrel, az hasonlít a képernyő egy régiójának megfordításához, azzal a különbségsel, hogy jobb teljesítményt nyújt a színek szélesebb köréhez.