Olå pessoal, depois do evento que aconteceu no JavaVersusDotNet em Taguatinga/DF; resolvi mostrar a todos como descrobrir e criar teclas de atalho no Windows Forms. Falando do evento, foi muito bom e no final o Rogério da Microsoft mostrou vårios vídeos inovadores.

Requisitos:
Visual Studio.NET 2008
Linguagem C#
Plataforma: Windows Forms

Se vocĂȘ quer aprender a descobrir qual o nĂșmero da tecla para gerar o atalho da maneira certa, leia esse artigo e qualquer dĂșvida pode entrar em contato.

Primeiro passo
No meu caso, vou gerar um novo projeto para mostrar essa funcionalidade “facinha facinha” a vocĂȘ. Cliquei em File / New Project e em seguida (imagem 1)

Imagem 1

Cliquei no Windows Forms Applications, deixei o nome padrĂŁo que veio e cliquei no botĂŁo Ok. (Imagem 2)
Imagem 2

Depois de criar o projeto, cliquei em cima do formulĂĄrio gerado e acessei as propriedades do mesmo. Se apertar o botĂŁo F4, abre as propriedades. (Imagem 3)
Imagem 3

Cliquei na opção events das propriedades. (Imagem 4)
Imagem 4

Escolhi a opção KeyDown clicando duas vezes. O Visual Studio.NET cria automaticamente uma função. (Code 1)

private void Form1_KeyDown(object sender, KeyEventArgs e) { } Code 1

Dentro desse mĂ©todo privado e que nĂŁo retorna valor algum Ă© que, vamos descobrir o nĂșmero de cada tecla de atalho que desejar. Veja o (Code 2).

private void Form1_KeyDown(object sender, KeyEventArgs e) { //descobrindo cada tecla de atalho MessageBox.Show(e.KeyValue.ToString()); } Code 2

O cĂłdigo que pega o nĂșmero correto da tecla apertada Ă© o KeyValue. Ao iniciar o formulĂĄrio cliquei o botĂŁo ESC. Veja o que apareceu na tela. (Imagem 5)
Imagem 5

Note que foi detectado o nĂșmero da tecla ESC que apertei. Em cima desse botĂŁo detectado, posso gerar alguns atalhos especĂ­ficos; por exemplo: se clicar o botĂŁo ESC a aplicação (formulĂĄrio) se fecha. Veja como ficaria o cĂłdigo. (Code 3)

private void Form1_KeyDown(object sender, KeyEventArgs e) { //descobrindo cada tecla de atalho MessageBox.Show(e.KeyValue.ToString()); //adicionando if (e.KeyValue.Equals(27)) { this.Close(); } } Code 3

Bom, aqui eu chego ao fim e qualquer dĂșvida pode entrar em contato.