Leer en inglés

Compartir a través de


ButtonRenderer.DrawButton Método

Definición

Dibuja un control de botón.

Sobrecargas

DrawButton(Graphics, Rectangle, PushButtonState)

Dibuja un control de botón en el estado especificado y con los límites indicados.

DrawButton(Graphics, Rectangle, Boolean, PushButtonState)

Dibuja un control de botón en el estado especificado y con los límites indicados, además de un rectángulo de foco opcional.

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

Dibuja un control de botón en el estado especificado y con los límites indicados, junto con la imagen especificada y con un rectángulo de foco opcional.

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

Dibuja un control de botón en el estado especificado y con los límites indicados, junto con el texto especificado y un rectángulo de foco opcional.

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

Dibuja un control de botón en el estado especificado y con los límites indicados, junto con el texto y el formato de texto especificados, y con un rectángulo de foco opcional.

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

Dibuja un control de botón en el estado especificado y con los límites indicados, junto con el texto y la imagen especificados, además de un rectángulo de foco opcional.

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

Dibuja un control de botón en el estado especificado y con los límites indicados, junto con el texto, el formato de texto y la imagen especificados, además de un rectángulo de foco opcional.

DrawButton(Graphics, Rectangle, PushButtonState)

Source:
ButtonRenderer.cs
Source:
ButtonRenderer.cs
Source:
ButtonRenderer.cs

Dibuja un control de botón en el estado especificado y con los límites indicados.

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

Parámetros

g
Graphics

Control Graphics que se utiliza para dibujar el botón.

bounds
Rectangle

Control Rectangle que especifica los límites del botón.

state
PushButtonState

Uno de los valores de PushButtonState que especifica el estado visual del botón.

Comentarios

Si los estilos visuales están habilitados en el sistema operativo y los estilos visuales se aplican a la aplicación actual, este método dibujará el botón con el estilo visual actual. De lo contrario, dibujará el botón con el estilo clásico de Windows.

Se aplica a

.NET Framework 4.8.1 y otras versiones
Producto Versiones
.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)

Source:
ButtonRenderer.cs
Source:
ButtonRenderer.cs
Source:
ButtonRenderer.cs

Dibuja un control de botón en el estado especificado y con los límites indicados, además de un rectángulo de foco opcional.

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

Parámetros

g
Graphics

Control Graphics que se utiliza para dibujar el botón.

bounds
Rectangle

Control Rectangle que especifica los límites del botón.

focused
Boolean

true para dibujar un rectángulo de foco en el botón; de lo contrario, false.

state
PushButtonState

Uno de los valores de PushButtonState que especifica el estado visual del botón.

Comentarios

Si los estilos visuales están habilitados en el sistema operativo y los estilos visuales se aplican a la aplicación actual, este método dibujará el botón con el estilo visual actual. De lo contrario, dibujará el botón con el estilo clásico de Windows.

Se aplica a

.NET Framework 4.8.1 y otras versiones
Producto Versiones
.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)

Source:
ButtonRenderer.cs
Source:
ButtonRenderer.cs
Source:
ButtonRenderer.cs

Dibuja un control de botón en el estado especificado y con los límites indicados, junto con la imagen especificada y con un rectángulo de foco opcional.

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

Parámetros

g
Graphics

Control Graphics que se utiliza para dibujar el botón.

bounds
Rectangle

Control Rectangle que especifica los límites del botón.

image
Image

Image que se va a dibujar en el botón.

imageBounds
Rectangle

Objeto Rectangle que representa las dimensiones de image.

focused
Boolean

true para dibujar un rectángulo de foco en el botón; de lo contrario, false.

state
PushButtonState

Uno de los valores de PushButtonState que especifica el estado visual del botón.

Comentarios

Si los estilos visuales están habilitados en el sistema operativo y los estilos visuales se aplican a la aplicación actual, este método dibujará el botón con el estilo visual actual. De lo contrario, dibujará el botón con el estilo clásico de Windows.

Se aplica a

.NET Framework 4.8.1 y otras versiones
Producto Versiones
.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)

Source:
ButtonRenderer.cs
Source:
ButtonRenderer.cs
Source:
ButtonRenderer.cs

Dibuja un control de botón en el estado especificado y con los límites indicados, junto con el texto especificado y un rectángulo de foco opcional.

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

Parámetros

g
Graphics

Control Graphics que se utiliza para dibujar el botón.

bounds
Rectangle

Control Rectangle que especifica los límites del botón.

buttonText
String

String que se va a dibujar en el botón.

font
Font

Font que se va a aplicar a buttonText.

focused
Boolean

true para dibujar un rectángulo de foco en el botón; de lo contrario, false.

state
PushButtonState

Uno de los valores de PushButtonState que especifica el estado visual del botón.

Ejemplos

En el ejemplo de código siguiente se usa el DrawButton(Graphics, Rectangle, String, Font, Boolean, PushButtonState) método en el método de OnPaint un control personalizado para dibujar un botón en el estado determinado por la ubicación del puntero del mouse. Este ejemplo de código es parte de un ejemplo mayor proporcionado para la clase ButtonRenderer.

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

Comentarios

Si los estilos visuales están habilitados en el sistema operativo y los estilos visuales se aplican a la aplicación actual, este método dibujará el botón con el estilo visual actual. De lo contrario, dibujará el botón con el estilo clásico de Windows.

Se aplica a

.NET Framework 4.8.1 y otras versiones
Producto Versiones
.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)

Source:
ButtonRenderer.cs
Source:
ButtonRenderer.cs
Source:
ButtonRenderer.cs

Dibuja un control de botón en el estado especificado y con los límites indicados, junto con el texto y el formato de texto especificados, y con un rectángulo de foco opcional.

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

Parámetros

g
Graphics

Control Graphics que se utiliza para dibujar el botón.

bounds
Rectangle

Control Rectangle que especifica los límites del botón.

buttonText
String

String que se va a dibujar en el botón.

font
Font

Font que se va a aplicar a buttonText.

flags
TextFormatFlags

Combinación bit a bit de los valores de TextFormatFlags que se van a aplicar a buttonText.

focused
Boolean

true para dibujar un rectángulo de foco en el botón; de lo contrario, false.

state
PushButtonState

Uno de los valores de PushButtonState que especifica el estado visual del botón.

Comentarios

Si los estilos visuales están habilitados en el sistema operativo y los estilos visuales se aplican a la aplicación actual, este método dibujará el botón con el estilo visual actual. De lo contrario, dibujará el botón con el estilo clásico de Windows.

Se aplica a

.NET Framework 4.8.1 y otras versiones
Producto Versiones
.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)

Source:
ButtonRenderer.cs
Source:
ButtonRenderer.cs
Source:
ButtonRenderer.cs

Dibuja un control de botón en el estado especificado y con los límites indicados, junto con el texto y la imagen especificados, además de un rectángulo de foco opcional.

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

Parámetros

g
Graphics

Control Graphics que se utiliza para dibujar el botón.

bounds
Rectangle

Control Rectangle que especifica los límites del botón.

buttonText
String

String que se va a dibujar en el botón.

font
Font

Font que se va a aplicar a buttonText.

image
Image

Image que se va a dibujar en el botón.

imageBounds
Rectangle

Objeto Rectangle que representa las dimensiones de image.

focused
Boolean

true para dibujar un rectángulo de foco en el botón; de lo contrario, false.

state
PushButtonState

Uno de los valores de PushButtonState que especifica el estado visual del botón.

Comentarios

Si los estilos visuales están habilitados en el sistema operativo y los estilos visuales se aplican a la aplicación actual, este método dibujará el botón con el estilo visual actual. De lo contrario, dibujará el botón con el estilo clásico de Windows.

Se aplica a

.NET Framework 4.8.1 y otras versiones
Producto Versiones
.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)

Source:
ButtonRenderer.cs
Source:
ButtonRenderer.cs
Source:
ButtonRenderer.cs

Dibuja un control de botón en el estado especificado y con los límites indicados, junto con el texto, el formato de texto y la imagen especificados, además de un rectángulo de foco opcional.

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

Parámetros

g
Graphics

Control Graphics que se utiliza para dibujar el botón.

bounds
Rectangle

Control Rectangle que especifica los límites del botón.

buttonText
String

String que se va a dibujar en el botón.

font
Font

Font que se va a aplicar a buttonText.

flags
TextFormatFlags

Combinación bit a bit de los valores de TextFormatFlags que se van a aplicar a buttonText.

image
Image

Image que se va a dibujar en el botón.

imageBounds
Rectangle

Objeto Rectangle que representa las dimensiones de image.

focused
Boolean

true para dibujar un rectángulo de foco en el botón; de lo contrario, false.

state
PushButtonState

Uno de los valores de PushButtonState que especifica el estado visual del botón.

Comentarios

Si los estilos visuales están habilitados en el sistema operativo y los estilos visuales se aplican a la aplicación actual, este método dibujará el botón con el estilo visual actual. De lo contrario, dibujará el botón con el estilo clásico de Windows.

Se aplica a

.NET Framework 4.8.1 y otras versiones
Producto Versiones
.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