ControlPaint.FillReversibleRectangle(Rectangle, Color) メソッド

定義

画面上の塗りつぶされた反転できる四角形を描画します。

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)

パラメーター

rectangle
Rectangle

塗りつぶす四角形の大きさを、画面座標で表す Rectangle

backColor
Color

塗りつぶしの背景の Color

次のコード例では、このメソッドの使用方法を FillReversibleRectangle 示します。 この例を実行するには、次のコードをフォームに貼り付けます。 フォームに名前を付けた Button2 ボタンを追加し、すべてのイベントがイベント ハンドラーに接続されていることを確認します。

//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

注釈

この backColor パラメーターは、四角形の塗りつぶしの色を計算して、常に背景に対して表示されるようにするために使用されます。

このメソッドの結果は、同じ四角形をもう一度描画することで反転できます。 この方法を使用して四角形を描画することは、画面の領域を反転するのと似ていますが、より多様な色のパフォーマンスが向上します。

適用対象

こちらもご覧ください