Nyelv

ControlPaint.FillReversibleRectangle(Rectangle, Color) Metódus

Definíció

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

rectangle
Rectangle

A Rectangle kitöltendő téglalap méreteit megjelenítő képernyőkoordináta.

backColor
Color

A Color kitöltés mögötti háttér.

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.

A következőre érvényes:

Lásd még