KeyEventArgs.KeyData Propriedade
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
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 Propriedade
A Keys representando o código da tecla pressionada, combinado com flags modificadores que indicam qual combinação de teclas CTRL, SHIFT e ALT foi pressionada ao mesmo tempo.
Exemplos
O seguinte exemplo de código demonstra a utilização deste elemento. No exemplo, um gestor de eventos reporta a ocorrência do Control.KeyDown evento. Este relatório ajuda-o a saber quando o evento ocorre e pode ajudá-lo na depuração. Para reportar múltiplos eventos ou eventos que ocorrem frequentemente, considere substituir MessageBox.Show ou Console.WriteLine anexar a mensagem a uma multilinha TextBox.
Para executar o código de exemplo, cole-o num projeto que contenha uma instância de um tipo que herda de Control, como um Button ou ComboBox. Depois, nomeie a instância Control1 e assegure que o gestor de eventos está associado ao 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
Observações
Podes usar constantes de Keys para extrair informação da KeyData propriedade. Use o operador bit a bit AND para comparar dados devolvidos por KeyData com constantes em Keys e obter informação sobre quais teclas o utilizador pressionou. Para determinar se uma tecla modificadora específica foi pressionada, use as Controlpropriedades , Shift, e Alt .