Você está aqui: C# ::: Dicas & Truques ::: Mouse e Teclado |
Como retornar o código da tecla pressionada em um evento KeyDown ou KeyUpQuantidade de visualizações: 17301 vezes |
O código da tecla pressionada pode ser obtido em um evento KeyDown ou KeyUp por meio da propriedade KeyCode da classe KeyEventArgs. Esta classe é fornecida aos eventos KeyDown e KeyUp, mas não ao evento KeyPress (que recebe um objeto da classe KeyPressEventArgs). O código de uma tecla é a representação da tecla (a tecla Enter, por exemplo, possui o código Return) e não o caractere inserido ao pressionarmos a tecla. Desta forma, o código da tecla é o mesmo, independente de as teclas CapsLock e Shift estarem pressionadas ou não. Veja um trecho de código no qual usamos a propriedade KeyCode da classe KeyEventArgs para obter o código de qualquer tecla pressionada (experimente com as teclas Esc, Espaço, Enter, etc): private void Form1_KeyDown(object sender, KeyEventArgs e){ // vamos obter o código da tecla pressionada // atenção: não é o código ASCII do caractere da tecla pressionada string codigo = e.KeyCode.ToString(); MessageBox.Show("O código da tecla pressionada é: " + codigo); } Podemos também usar a propriedade KeyCode para verificar se o usuário pressionou uma determinada tecla. Veja, por exemplo, como testar se o usuário pressionou a tecla F5: private void Form1_KeyDown(object sender, KeyEventArgs e){ // vamos verificar se o usuário pressionou a tecla F5 if(e.KeyCode == Keys.F5){ MessageBox.Show("Você pressionou a tecla F5"); } else{ MessageBox.Show("Você NÃO pressionou a tecla F5"); } } Note que aqui nós usamos a enumeração Keys. Esta enumeração contém constantes para todas as teclas dos teclados atuais. |
![]() |
Desafios, Exercícios e Algoritmos Resolvidos de C# |
Veja mais Dicas e truques de C# |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |