Compartir a través de


Utilizar eventos de teclado

La mayoría de los programas de formularios Windows Forms procesan las entradas de teclado mediante el control de los eventos de teclado. En este tema se proporciona información general de los eventos de teclado, incluyendo detalles acerca de cuándo utilizar cada evento y los datos que se proporcionan para cada evento. Para obtener más información, vea Información general sobre eventos (Formularios Windows Forms) y Información general sobre controladores de eventos (Formularios Windows Forms) y Información general sobre controladores de eventos (Formularios Windows Forms) y Información general sobre eventos (Formularios Windows Forms) y Información general sobre controladores de eventos (Formularios Windows Forms) y Información general sobre eventos (Formularios Windows Forms) y Información general sobre controladores de eventos (Formularios Windows Forms) y Información general sobre eventos (Formularios Windows Forms).

Eventos de teclado

Los formularios Windows Forms proporcionan dos eventos que tienen lugar cuando un usuario presiona una tecla del teclado y un evento cuando un usuario suelta una tecla del teclado:

  • El evento KeyDown sólo tiene lugar una vez

  • El evento KeyPress, que puede aparecer varias veces cuando un usuario mantiene presionada la misma tecla.

  • El evento KeyUp se produce una vez cuando el usuario suelta una tecla.

Cuando el usuario presiona una tecla, el formulario Windows Forms determina qué evento se produce en función de si el mensaje del teclado especifica una tecla de caracteres o una tecla física. Para obtener más información sobre las teclas de caracteres y físicas, vea Funcionamiento de las entradas mediante teclado.

En la tabla siguiente se describen los tres eventos de teclado.

Evento de teclado

Descripción

Resultados

KeyDown

Este evento se provoca siempre que un usuario presiona una tecla física.

El controlador para el evento KeyDown recibe:

  • Un parámetro KeyEventArgs, que proporciona la propiedad KeyCode (que especifica un botón de teclado físico).

  • La propiedad Modifiers (MAYÚS, CTRL o ALT).

  • La propiedad KeyData (que combina el código de tecla y el modificador). El parámetro KeyEventArgs también proporciona:

    • La propiedad Handled, que se puede establecer para evitar que el control subyacente reciba la tecla.

    • La propiedad SuppressKeyPress, que se puede utilizar para suprimir los eventos KeyPress y KeyUp para las teclas presionadas específicas.

KeyPress

Este evento se provoca cuando la tecla o teclas presionadas dan como resultado un carácter. Por ejemplo, el usuario presiona las teclas MAYÚS y la "a" minúscula, lo que da como resultado el carácter de "A" mayúscula.

El evento KeyPress se provoca después de KeyDown.

  • El controlador para el evento KeyPress recibe:

  • Un parámetro KeyPressEventArgs, que contiene el código de carácter de la tecla que se ha presionado. Este código de carácter es único para cada combinación de tecla de carácter y tecla modificadora.

    Por ejemplo, la tecla "A" genera:

    • El código de carácter 65, si se presiona con la tecla MAYÚS

    • O BLOQ MAYÚS, si se presiona 97 solo,

    • Y 1, si se presiona con la tecla CTRL.

KeyUp

Este evento se provoca siempre que el usuario suelta una tecla física.

El controlador para el evento KeyUp recibe:

  • Un parámetro KeyEventArgs:

    • Que proporciona la propiedad KeyCode (que especifica un botón de teclado físico).

    • La propiedad Modifiers (MAYÚS, CTRL o ALT).

    • La propiedad KeyData (que combina el código de tecla y el modificador).

Vea también

Conceptos

Funcionamiento de las entradas mediante teclado

Otros recursos

Entradas mediante teclado en una aplicación de Windows Forms

Entradas mediante el mouse (ratón) en una aplicación de Windows Forms