ButtonRenderer.DrawButton Метод

Определение

Рисует элемент управления кнопкой.

Перегрузки

Имя Описание
DrawButton(Graphics, Rectangle, PushButtonState)

Рисует элемент управления кнопкой в указанном состоянии и границах.

DrawButton(Graphics, Rectangle, Boolean, PushButtonState)

Рисует элемент управления кнопкой в указанном состоянии и границах и с необязательным прямоугольником фокуса.

DrawButton(Graphics, Rectangle, Image, Rectangle, Boolean, PushButtonState)

Рисует элемент управления кнопкой в указанном состоянии и границах с указанным изображением и необязательным прямоугольником фокуса.

DrawButton(Graphics, Rectangle, String, Font, Boolean, PushButtonState)

Рисует элемент управления кнопкой в указанном состоянии и границах с указанным текстом и необязательным прямоугольником фокуса.

DrawButton(Graphics, Rectangle, String, Font, TextFormatFlags, Boolean, PushButtonState)

Рисует элемент управления кнопкой в указанном состоянии и границах с указанным текстом и форматированием текста и необязательным прямоугольником фокуса.

DrawButton(Graphics, Rectangle, String, Font, Image, Rectangle, Boolean, PushButtonState)

Рисует элемент управления кнопкой в указанном состоянии и границах с указанным текстом и изображением и необязательным прямоугольником фокуса.

DrawButton(Graphics, Rectangle, String, Font, TextFormatFlags, Image, Rectangle, Boolean, PushButtonState)

Рисует элемент управления кнопкой в указанном состоянии и границах; с указанным текстом, форматированием текста и изображением; и с необязательным прямоугольником фокуса.

DrawButton(Graphics, Rectangle, PushButtonState)

Исходный код:
ButtonRenderer.cs
Исходный код:
ButtonRenderer.cs
Исходный код:
ButtonRenderer.cs
Исходный код:
ButtonRenderer.cs
Исходный код:
ButtonRenderer.cs

Рисует элемент управления кнопкой в указанном состоянии и границах.

public:
 static void DrawButton(System::Drawing::Graphics ^ g, System::Drawing::Rectangle bounds, System::Windows::Forms::VisualStyles::PushButtonState state);
public static void DrawButton(System.Drawing.Graphics g, System.Drawing.Rectangle bounds, System.Windows.Forms.VisualStyles.PushButtonState state);
static member DrawButton : System.Drawing.Graphics * System.Drawing.Rectangle * System.Windows.Forms.VisualStyles.PushButtonState -> unit
Public Shared Sub DrawButton (g As Graphics, bounds As Rectangle, state As PushButtonState)

Параметры

g
Graphics

Используется Graphics для рисования кнопки.

bounds
Rectangle

Значение Rectangle , указывающее границы кнопки.

state
PushButtonState

Одно из PushButtonState значений, указывающее визуальное состояние кнопки.

Комментарии

Если стили визуальных элементов включены в операционной системе, а стили визуальных элементов применяются к текущему приложению, этот метод нарисует кнопку с текущим визуальным стилем. В противном случае она нарисует кнопку с классическим стилем Windows.

Применяется к

DrawButton(Graphics, Rectangle, Boolean, PushButtonState)

Исходный код:
ButtonRenderer.cs
Исходный код:
ButtonRenderer.cs
Исходный код:
ButtonRenderer.cs
Исходный код:
ButtonRenderer.cs
Исходный код:
ButtonRenderer.cs

Рисует элемент управления кнопкой в указанном состоянии и границах и с необязательным прямоугольником фокуса.

public:
 static void DrawButton(System::Drawing::Graphics ^ g, System::Drawing::Rectangle bounds, bool focused, System::Windows::Forms::VisualStyles::PushButtonState state);
public static void DrawButton(System.Drawing.Graphics g, System.Drawing.Rectangle bounds, bool focused, System.Windows.Forms.VisualStyles.PushButtonState state);
static member DrawButton : System.Drawing.Graphics * System.Drawing.Rectangle * bool * System.Windows.Forms.VisualStyles.PushButtonState -> unit
Public Shared Sub DrawButton (g As Graphics, bounds As Rectangle, focused As Boolean, state As PushButtonState)

Параметры

g
Graphics

Используется Graphics для рисования кнопки.

bounds
Rectangle

Значение Rectangle , указывающее границы кнопки.

focused
Boolean

true рисование прямоугольника фокуса на кнопке; falseв противном случае .

state
PushButtonState

Одно из PushButtonState значений, указывающее визуальное состояние кнопки.

Комментарии

Если стили визуальных элементов включены в операционной системе, а стили визуальных элементов применяются к текущему приложению, этот метод нарисует кнопку с текущим визуальным стилем. В противном случае она нарисует кнопку с классическим стилем Windows.

Применяется к

DrawButton(Graphics, Rectangle, Image, Rectangle, Boolean, PushButtonState)

Исходный код:
ButtonRenderer.cs
Исходный код:
ButtonRenderer.cs
Исходный код:
ButtonRenderer.cs
Исходный код:
ButtonRenderer.cs
Исходный код:
ButtonRenderer.cs

Рисует элемент управления кнопкой в указанном состоянии и границах с указанным изображением и необязательным прямоугольником фокуса.

public:
 static void DrawButton(System::Drawing::Graphics ^ g, System::Drawing::Rectangle bounds, System::Drawing::Image ^ image, System::Drawing::Rectangle imageBounds, bool focused, System::Windows::Forms::VisualStyles::PushButtonState state);
public static void DrawButton(System.Drawing.Graphics g, System.Drawing.Rectangle bounds, System.Drawing.Image image, System.Drawing.Rectangle imageBounds, bool focused, System.Windows.Forms.VisualStyles.PushButtonState state);
static member DrawButton : System.Drawing.Graphics * System.Drawing.Rectangle * System.Drawing.Image * System.Drawing.Rectangle * bool * System.Windows.Forms.VisualStyles.PushButtonState -> unit
Public Shared Sub DrawButton (g As Graphics, bounds As Rectangle, image As Image, imageBounds As Rectangle, focused As Boolean, state As PushButtonState)

Параметры

g
Graphics

Используется Graphics для рисования кнопки.

bounds
Rectangle

Значение Rectangle , указывающее границы кнопки.

image
Image

Нарисуйте Image кнопку.

imageBounds
Rectangle

Значение Rectangle , представляющее измерения image.

focused
Boolean

true рисование прямоугольника фокуса на кнопке; falseв противном случае .

state
PushButtonState

Одно из PushButtonState значений, указывающее визуальное состояние кнопки.

Комментарии

Если стили визуальных элементов включены в операционной системе, а стили визуальных элементов применяются к текущему приложению, этот метод нарисует кнопку с текущим визуальным стилем. В противном случае она нарисует кнопку с классическим стилем Windows.

Применяется к

DrawButton(Graphics, Rectangle, String, Font, Boolean, PushButtonState)

Исходный код:
ButtonRenderer.cs
Исходный код:
ButtonRenderer.cs
Исходный код:
ButtonRenderer.cs
Исходный код:
ButtonRenderer.cs
Исходный код:
ButtonRenderer.cs

Рисует элемент управления кнопкой в указанном состоянии и границах с указанным текстом и необязательным прямоугольником фокуса.

public:
 static void DrawButton(System::Drawing::Graphics ^ g, System::Drawing::Rectangle bounds, System::String ^ buttonText, System::Drawing::Font ^ font, bool focused, System::Windows::Forms::VisualStyles::PushButtonState state);
public static void DrawButton(System.Drawing.Graphics g, System.Drawing.Rectangle bounds, string buttonText, System.Drawing.Font font, bool focused, System.Windows.Forms.VisualStyles.PushButtonState state);
public static void DrawButton(System.Drawing.Graphics g, System.Drawing.Rectangle bounds, string? buttonText, System.Drawing.Font? font, bool focused, System.Windows.Forms.VisualStyles.PushButtonState state);
static member DrawButton : System.Drawing.Graphics * System.Drawing.Rectangle * string * System.Drawing.Font * bool * System.Windows.Forms.VisualStyles.PushButtonState -> unit
Public Shared Sub DrawButton (g As Graphics, bounds As Rectangle, buttonText As String, font As Font, focused As Boolean, state As PushButtonState)

Параметры

g
Graphics

Используется Graphics для рисования кнопки.

bounds
Rectangle

Значение Rectangle , указывающее границы кнопки.

buttonText
String

Нарисуйте String кнопку.

font
Font

Применимо Font к buttonText.

focused
Boolean

true рисование прямоугольника фокуса на кнопке; falseв противном случае .

state
PushButtonState

Одно из PushButtonState значений, указывающее визуальное состояние кнопки.

Примеры

В следующем примере кода метод используется DrawButton(Graphics, Rectangle, String, Font, Boolean, PushButtonState) в методе пользовательского элемента управления OnPaint для рисования кнопки в состоянии, определяемом расположением указателя мыши. Этот пример кода является частью более крупного примера, предоставленного для ButtonRenderer класса.

    // Draw the large or small button, depending on the current state.
protected:
    virtual void OnPaint(PaintEventArgs^ e) override
    {
        __super::OnPaint(e);

        // Draw the smaller pressed button image
        if (state == PushButtonState::Pressed)
        {
            // Set the background color to the parent if visual styles
            // are disabled, because DrawParentBackground will only paint
            // over the control background if visual styles are enabled.
            if (Application::RenderWithVisualStyles)
            {
                this->BackColor = Color::Azure;
            }
            else
            {
                this->BackColor = this->Parent->BackColor;
            }


            // If you comment out the call to DrawParentBackground,
            // the background of the control will still be visible
            // outside the pressed button, if visual styles are enabled.
            ButtonRenderer::DrawParentBackground(e->Graphics,
                ClientRectangle, this);
            ButtonRenderer::DrawButton(e->Graphics, ClickRectangle,
                this->Text, this->Font, true, state);
        }

        // Draw the bigger unpressed button image.
        else
        {
            ButtonRenderer::DrawButton(e->Graphics, ClientRectangle,
                this->Text, this->Font, false, state);
        }
    }

    // Draw the smaller pressed button image.
protected:
    virtual void OnMouseDown(MouseEventArgs^ e) override
    {
        __super::OnMouseDown(e);
        this->Text = "Clicked!";
        state = PushButtonState::Pressed;
        Invalidate();
    }

    // Draw the button in the hot state.
protected:
    virtual void OnMouseEnter(EventArgs^ e) override
    {
        __super::OnMouseEnter(e);
        this->Text = "Click here";
        state = PushButtonState::Hot;
        Invalidate();
    }

    // Draw the button in the unpressed state.
protected:
    virtual void OnMouseLeave(EventArgs^ e) override
    {
        __super::OnMouseLeave(e);
        this->Text = "Click here";
        state = PushButtonState::Normal;
        Invalidate();
    }
// Draw the large or small button, depending on the current state.
protected override void OnPaint(PaintEventArgs e)
{
    base.OnPaint(e);

    // Draw the smaller pressed button image
    if (state == PushButtonState.Pressed)
    {
        // Set the background color to the parent if visual styles  
        // are disabled, because DrawParentBackground will only paint  
        // over the control background if visual styles are enabled.
        this.BackColor = Application.RenderWithVisualStyles ?
            Color.Azure : this.Parent.BackColor;

        // If you comment out the call to DrawParentBackground, 
        // the background of the control will still be visible 
        // outside the pressed button, if visual styles are enabled.
        ButtonRenderer.DrawParentBackground(e.Graphics,
            ClientRectangle, this);
        ButtonRenderer.DrawButton(e.Graphics, ClickRectangle,
            this.Text, this.Font, true, state);
    }

    // Draw the bigger unpressed button image.
    else
    {
        ButtonRenderer.DrawButton(e.Graphics, ClientRectangle,
            this.Text, this.Font, false, state);
    }
}

// Draw the smaller pressed button image.
protected override void OnMouseDown(MouseEventArgs e)
{
    base.OnMouseDown(e);
    this.Text = "Clicked!";
    state = PushButtonState.Pressed;
    Invalidate();
}

// Draw the button in the hot state. 
protected override void OnMouseEnter(EventArgs e)
{
    base.OnMouseEnter(e);
    this.Text = "Click here";
    state = PushButtonState.Hot;
    Invalidate();
}

// Draw the button in the unpressed state.
protected override void OnMouseLeave(EventArgs e)
{
    base.OnMouseLeave(e);
    this.Text = "Click here";
    state = PushButtonState.Normal;
    Invalidate();
}
' Draw the large or small button, depending on the current state.
Protected Overrides Sub OnPaint(ByVal e As PaintEventArgs)
    MyBase.OnPaint(e)

    ' Draw the smaller pressed button image.
    If state = PushButtonState.Pressed Then
        ' Set the background color to the parent if visual styles  
        ' are disabled, because DrawParentBackground will only paint  
        ' over the control background if visual styles are enabled.
        If Application.RenderWithVisualStyles Then
            Me.BackColor = Color.Azure
        Else
            Me.BackColor = Me.Parent.BackColor
        End If

        ' If you comment out the call to DrawParentBackground,   
        ' the background of the control will still be visible 
        ' outside the pressed button, if visual styles are enabled.
        ButtonRenderer.DrawParentBackground(e.Graphics, _
            Me.ClientRectangle, Me)
        ButtonRenderer.DrawButton(e.Graphics, ClickRectangle, _
            Me.Text, Me.Font, True, state)

    ' Draw the bigger unpressed button image.
    Else
        ButtonRenderer.DrawButton(e.Graphics, Me.ClientRectangle, _
            Me.Text, Me.Font, False, state)
    End If
End Sub

' Draw the smaller pressed button image.
Protected Overrides Sub OnMouseDown(ByVal e As MouseEventArgs)
    MyBase.OnMouseDown(e)
    With Me
        .Text = "Clicked!"
        .state = PushButtonState.Pressed
    End With
    Invalidate()
End Sub

' Draw the button in the hot state. 
Protected Overrides Sub OnMouseEnter(ByVal e As EventArgs)
    MyBase.OnMouseEnter(e)
    With Me
        .Text = "Click here"
        .state = PushButtonState.Hot
    End With
    Invalidate()
End Sub

' Draw the button in the unpressed state.
Protected Overrides Sub OnMouseLeave(ByVal e As EventArgs)
    MyBase.OnMouseLeave(e)
    With Me
        .Text = "Click here"
        .state = PushButtonState.Normal
    End With
    Invalidate()
End Sub

Комментарии

Если стили визуальных элементов включены в операционной системе, а стили визуальных элементов применяются к текущему приложению, этот метод нарисует кнопку с текущим визуальным стилем. В противном случае она нарисует кнопку с классическим стилем Windows.

Применяется к

DrawButton(Graphics, Rectangle, String, Font, TextFormatFlags, Boolean, PushButtonState)

Исходный код:
ButtonRenderer.cs
Исходный код:
ButtonRenderer.cs
Исходный код:
ButtonRenderer.cs
Исходный код:
ButtonRenderer.cs
Исходный код:
ButtonRenderer.cs

Рисует элемент управления кнопкой в указанном состоянии и границах с указанным текстом и форматированием текста и необязательным прямоугольником фокуса.

public:
 static void DrawButton(System::Drawing::Graphics ^ g, System::Drawing::Rectangle bounds, System::String ^ buttonText, System::Drawing::Font ^ font, System::Windows::Forms::TextFormatFlags flags, bool focused, System::Windows::Forms::VisualStyles::PushButtonState state);
public static void DrawButton(System.Drawing.Graphics g, System.Drawing.Rectangle bounds, string buttonText, System.Drawing.Font font, System.Windows.Forms.TextFormatFlags flags, bool focused, System.Windows.Forms.VisualStyles.PushButtonState state);
public static void DrawButton(System.Drawing.Graphics g, System.Drawing.Rectangle bounds, string? buttonText, System.Drawing.Font? font, System.Windows.Forms.TextFormatFlags flags, bool focused, System.Windows.Forms.VisualStyles.PushButtonState state);
static member DrawButton : System.Drawing.Graphics * System.Drawing.Rectangle * string * System.Drawing.Font * System.Windows.Forms.TextFormatFlags * bool * System.Windows.Forms.VisualStyles.PushButtonState -> unit
Public Shared Sub DrawButton (g As Graphics, bounds As Rectangle, buttonText As String, font As Font, flags As TextFormatFlags, focused As Boolean, state As PushButtonState)

Параметры

g
Graphics

Используется Graphics для рисования кнопки.

bounds
Rectangle

Значение Rectangle , указывающее границы кнопки.

buttonText
String

Нарисуйте String кнопку.

font
Font

Применимо Font к buttonText.

flags
TextFormatFlags

Побитовое сочетание значений TextFormatFlags , к buttonTextкоторые следует применить.

focused
Boolean

true рисование прямоугольника фокуса на кнопке; falseв противном случае .

state
PushButtonState

Одно из PushButtonState значений, указывающее визуальное состояние кнопки.

Комментарии

Если стили визуальных элементов включены в операционной системе, а стили визуальных элементов применяются к текущему приложению, этот метод нарисует кнопку с текущим визуальным стилем. В противном случае она нарисует кнопку с классическим стилем Windows.

Применяется к

DrawButton(Graphics, Rectangle, String, Font, Image, Rectangle, Boolean, PushButtonState)

Исходный код:
ButtonRenderer.cs
Исходный код:
ButtonRenderer.cs
Исходный код:
ButtonRenderer.cs
Исходный код:
ButtonRenderer.cs
Исходный код:
ButtonRenderer.cs

Рисует элемент управления кнопкой в указанном состоянии и границах с указанным текстом и изображением и необязательным прямоугольником фокуса.

public:
 static void DrawButton(System::Drawing::Graphics ^ g, System::Drawing::Rectangle bounds, System::String ^ buttonText, System::Drawing::Font ^ font, System::Drawing::Image ^ image, System::Drawing::Rectangle imageBounds, bool focused, System::Windows::Forms::VisualStyles::PushButtonState state);
public static void DrawButton(System.Drawing.Graphics g, System.Drawing.Rectangle bounds, string buttonText, System.Drawing.Font font, System.Drawing.Image image, System.Drawing.Rectangle imageBounds, bool focused, System.Windows.Forms.VisualStyles.PushButtonState state);
public static void DrawButton(System.Drawing.Graphics g, System.Drawing.Rectangle bounds, string? buttonText, System.Drawing.Font? font, System.Drawing.Image image, System.Drawing.Rectangle imageBounds, bool focused, System.Windows.Forms.VisualStyles.PushButtonState state);
static member DrawButton : System.Drawing.Graphics * System.Drawing.Rectangle * string * System.Drawing.Font * System.Drawing.Image * System.Drawing.Rectangle * bool * System.Windows.Forms.VisualStyles.PushButtonState -> unit
Public Shared Sub DrawButton (g As Graphics, bounds As Rectangle, buttonText As String, font As Font, image As Image, imageBounds As Rectangle, focused As Boolean, state As PushButtonState)

Параметры

g
Graphics

Используется Graphics для рисования кнопки.

bounds
Rectangle

Значение Rectangle , указывающее границы кнопки.

buttonText
String

Нарисуйте String кнопку.

font
Font

Применимо Font к buttonText.

image
Image

Нарисуйте Image кнопку.

imageBounds
Rectangle

Значение Rectangle , представляющее измерения image.

focused
Boolean

true рисование прямоугольника фокуса на кнопке; falseв противном случае .

state
PushButtonState

Одно из PushButtonState значений, указывающее визуальное состояние кнопки.

Комментарии

Если стили визуальных элементов включены в операционной системе, а стили визуальных элементов применяются к текущему приложению, этот метод нарисует кнопку с текущим визуальным стилем. В противном случае она нарисует кнопку с классическим стилем Windows.

Применяется к

DrawButton(Graphics, Rectangle, String, Font, TextFormatFlags, Image, Rectangle, Boolean, PushButtonState)

Исходный код:
ButtonRenderer.cs
Исходный код:
ButtonRenderer.cs
Исходный код:
ButtonRenderer.cs
Исходный код:
ButtonRenderer.cs
Исходный код:
ButtonRenderer.cs

Рисует элемент управления кнопкой в указанном состоянии и границах; с указанным текстом, форматированием текста и изображением; и с необязательным прямоугольником фокуса.

public:
 static void DrawButton(System::Drawing::Graphics ^ g, System::Drawing::Rectangle bounds, System::String ^ buttonText, System::Drawing::Font ^ font, System::Windows::Forms::TextFormatFlags flags, System::Drawing::Image ^ image, System::Drawing::Rectangle imageBounds, bool focused, System::Windows::Forms::VisualStyles::PushButtonState state);
public static void DrawButton(System.Drawing.Graphics g, System.Drawing.Rectangle bounds, string buttonText, System.Drawing.Font font, System.Windows.Forms.TextFormatFlags flags, System.Drawing.Image image, System.Drawing.Rectangle imageBounds, bool focused, System.Windows.Forms.VisualStyles.PushButtonState state);
public static void DrawButton(System.Drawing.Graphics g, System.Drawing.Rectangle bounds, string? buttonText, System.Drawing.Font? font, System.Windows.Forms.TextFormatFlags flags, System.Drawing.Image image, System.Drawing.Rectangle imageBounds, bool focused, System.Windows.Forms.VisualStyles.PushButtonState state);
static member DrawButton : System.Drawing.Graphics * System.Drawing.Rectangle * string * System.Drawing.Font * System.Windows.Forms.TextFormatFlags * System.Drawing.Image * System.Drawing.Rectangle * bool * System.Windows.Forms.VisualStyles.PushButtonState -> unit
Public Shared Sub DrawButton (g As Graphics, bounds As Rectangle, buttonText As String, font As Font, flags As TextFormatFlags, image As Image, imageBounds As Rectangle, focused As Boolean, state As PushButtonState)

Параметры

g
Graphics

Используется Graphics для рисования кнопки.

bounds
Rectangle

Значение Rectangle , указывающее границы кнопки.

buttonText
String

Нарисуйте String кнопку.

font
Font

Применимо Font к buttonText.

flags
TextFormatFlags

Побитовое сочетание значений TextFormatFlags , к buttonTextкоторые следует применить.

image
Image

Нарисуйте Image кнопку.

imageBounds
Rectangle

Значение Rectangle , представляющее измерения image.

focused
Boolean

true рисование прямоугольника фокуса на кнопке; falseв противном случае .

state
PushButtonState

Одно из PushButtonState значений, указывающее визуальное состояние кнопки.

Комментарии

Если стили визуальных элементов включены в операционной системе, а стили визуальных элементов применяются к текущему приложению, этот метод нарисует кнопку с текущим визуальным стилем. В противном случае она нарисует кнопку с классическим стилем Windows.

Применяется к