Identificando Teclas (keypress)
Identificando teclas (keypress)
Escrito por Ricardo M Machado em
.Net. Data: 14/06/2007
Licença: Alguns direitos reservados. Dar créditos ao autor e linkar este original
Ver tópico original no fórum.
Ola pessoal,
Mais um pequeno tutorial, rápido e prático. Como identiciar as teclas pressionadas para executar atalhos nos formulários.
Primeiramente você deve mudar o valor da propriedade KeyPreview do seu form para true, isto fará com que toda tecla pressionada durante a execução do formulário será executada o método determinado no evento.
Você pode altear este valor pelo code behind também.
this.KeyPreview = true;
Depois de mudar o valor é só fazer o delegate do evento para a função:
private void Form1_KeyPress(object sender, KeyPressEventArgs e)
{
switch (e.KeyChar)
{
// Tecla ESC fechar o fomul rio
case (char)27:
this.Close();
break;
//Tecla ENTER mudar de campo
case (char)13:
SendKeys.Send("{TAB}");
break;
//CTRL + T
case (char)20:
MessageBox.Show("CTRL + T");
break;
// EXEMPLO DE CTRL + I - executar o botao INSERIR
case (char)9:
button1.PerformClick();
MessageBox.Show("CTRL + I");
break;
// EXEMPLO DE CTRL + A - executar o botao ALTERAR
case (char)1:
button1.PerformClick();
MessageBox.Show("CTRL + A");
break;
// EXEMPLO DE CTRL + N - executar o botao NOVO
case (char)14:
button1.PerformClick();
MessageBox.Show("CTRL + N");
break;
// EXEMPLO DE CTRL + D - executar o botao DELETAR
case (char)4:
button1.PerformClick();
MessageBox.Show("CTRL + D");
break;
// EXEMPLO > - executar o botao de navega‡Æo pr¢ximo
case (char)46:
button1.PerformClick();
MessageBox.Show(">");
break;
// EXEMPLO < - executar o botao de navega‡Æo anterior
case (char)44:
button1.PerformClick();
MessageBox.Show("<");
break;
}
}
É isso pessoal, até a próxima.
Dívidas, críticas, sugestões já sabem? Fiquem a vontade para postar, contribua també.