KeyEventArgs.KeyData Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
public:
property System::Windows::Forms::Keys KeyData { System::Windows::Forms::Keys get(); };
public System.Windows.Forms.Keys KeyData { get; }
member this.KeyData : System.Windows.Forms.Keys
Public ReadOnly Property KeyData As Keys
Valor de propiedad
Un valor Keys que representa el código de tecla correspondiente a la tecla que se presionó, combinado con cualquier marcador modificador que indique qué combinación de teclas CTRL, MAYÚS y ALT se presionaron al mismo tiempo.
Ejemplos
En el ejemplo de código siguiente se muestra el uso de este miembro. En el ejemplo, un controlador de eventos informa sobre la aparición del Control.KeyDown evento. Este informe le ayuda a aprender cuándo se produce el evento y puede ayudarle a depurar. Para informar sobre varios eventos o eventos que se producen con frecuencia, considere la posibilidad de reemplazar MessageBox.ShowConsole.WriteLine por o anexar el mensaje a una línea TextBoxmúltiple.
Para ejecutar el código de ejemplo, péguelo en un proyecto que contenga una instancia de un tipo que herede de Control, como o ComboBoxButton . A continuación, asigne un nombre a la instancia Control1
y asegúrese de que el controlador de eventos está asociado al Control.KeyDown evento.
private void Control1_KeyDown(Object sender, KeyEventArgs e) {
System.Text.StringBuilder messageBoxCS = new System.Text.StringBuilder();
messageBoxCS.AppendFormat("{0} = {1}", "Alt", e.Alt );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "Control", e.Control );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "Handled", e.Handled );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "KeyCode", e.KeyCode );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "KeyValue", e.KeyValue );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "KeyData", e.KeyData );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "Modifiers", e.Modifiers );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "Shift", e.Shift );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "SuppressKeyPress", e.SuppressKeyPress );
messageBoxCS.AppendLine();
MessageBox.Show(messageBoxCS.ToString(), "KeyDown Event" );
}
Private Sub Control1_KeyDown(sender as Object, e as KeyEventArgs) _
Handles Control1.KeyDown
Dim messageBoxVB as New System.Text.StringBuilder()
messageBoxVB.AppendFormat("{0} = {1}", "Alt", e.Alt)
messageBoxVB.AppendLine()
messageBoxVB.AppendFormat("{0} = {1}", "Control", e.Control)
messageBoxVB.AppendLine()
messageBoxVB.AppendFormat("{0} = {1}", "Handled", e.Handled)
messageBoxVB.AppendLine()
messageBoxVB.AppendFormat("{0} = {1}", "KeyCode", e.KeyCode)
messageBoxVB.AppendLine()
messageBoxVB.AppendFormat("{0} = {1}", "KeyValue", e.KeyValue)
messageBoxVB.AppendLine()
messageBoxVB.AppendFormat("{0} = {1}", "KeyData", e.KeyData)
messageBoxVB.AppendLine()
messageBoxVB.AppendFormat("{0} = {1}", "Modifiers", e.Modifiers)
messageBoxVB.AppendLine()
messageBoxVB.AppendFormat("{0} = {1}", "Shift", e.Shift)
messageBoxVB.AppendLine()
messageBoxVB.AppendFormat("{0} = {1}", "SuppressKeyPress", e.SuppressKeyPress)
messageBoxVB.AppendLine()
MessageBox.Show(messageBoxVB.ToString(),"KeyDown Event")
End Sub
Comentarios
Puede usar constantes de Keys para extraer información de la KeyData propiedad . Use el operador AND bit a bit para comparar los datos devueltos por KeyData con constantes en Keys para obtener información sobre las teclas que presionó el usuario. Para determinar si se presionó una tecla modificadora específica, use las Controlpropiedades , Shifty Alt .