Прочитать на английском

Поделиться через


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

Рисует элемент управления "Кнопка" в заданном состоянии и с заданными границами.

public static void DrawButton(System.Drawing.Graphics g, System.Drawing.Rectangle bounds, System.Windows.Forms.VisualStyles.PushButtonState state);

Параметры

g
Graphics

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

bounds
Rectangle

Rectangle указывает границы кнопки.

state
PushButtonState

Одно из значений PushButtonState, с помощью которого задается видимое состояние кнопки.

Комментарии

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

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

.NET Framework 4.8.1 и другие версии
Продукт Версии
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

DrawButton(Graphics, Rectangle, Boolean, PushButtonState)

Исходный код:
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);

Параметры

g
Graphics

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

bounds
Rectangle

Rectangle указывает границы кнопки.

focused
Boolean

Укажите значение true, чтобы нарисовать на кнопке прямоугольник фокуса, и значение false — в противном случае.

state
PushButtonState

Одно из значений PushButtonState, с помощью которого задается видимое состояние кнопки.

Комментарии

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

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

.NET Framework 4.8.1 и другие версии
Продукт Версии
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

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

Исходный код:
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);

Параметры

g
Graphics

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

bounds
Rectangle

Rectangle указывает границы кнопки.

image
Image

Объект Image для отрисовки на кнопке.

imageBounds
Rectangle

Прямоугольник Rectangle, представляющий размеры объекта image.

focused
Boolean

Укажите значение true, чтобы нарисовать на кнопке прямоугольник фокуса, и значение false — в противном случае.

state
PushButtonState

Одно из значений PushButtonState, с помощью которого задается видимое состояние кнопки.

Комментарии

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

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

.NET Framework 4.8.1 и другие версии
Продукт Версии
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

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

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

Рисует элемент управления "Кнопка" в указанном состоянии, с заданными границами, с заданным текстом и с дополнительно указываемым прямоугольником фокуса.

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);

Параметры

g
Graphics

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

bounds
Rectangle

Rectangle указывает границы кнопки.

buttonText
String

Объект String для отрисовки на кнопке.

font
Font

Снимок Font, применяемый к диапазонам buttonText.

focused
Boolean

Укажите значение true, чтобы нарисовать на кнопке прямоугольник фокуса, и значение false — в противном случае.

state
PushButtonState

Одно из значений PushButtonState, с помощью которого задается видимое состояние кнопки.

Примеры

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

// 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();
}

Комментарии

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

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

.NET Framework 4.8.1 и другие версии
Продукт Версии
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

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

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

Рисует элемент управления "Кнопка" в указанном состоянии, с заданными границами, с заданным текстом и форматированием текста, а также с дополнительно указываемым прямоугольником фокуса.

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);

Параметры

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.

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

.NET Framework 4.8.1 и другие версии
Продукт Версии
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

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

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

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

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);

Параметры

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.

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

.NET Framework 4.8.1 и другие версии
Продукт Версии
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

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

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

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

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);

Параметры

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.

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

.NET Framework 4.8.1 и другие версии
Продукт Версии
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10