Você está aqui: C# ::: Dicas & Truques ::: Mouse e Teclado |
Verificando o estado das teclas modificadoras (Ctrl, Alt e Shift) em um evento do mouseQuantidade de visualizações: 10107 vezes |
|
Em algumas situações gostaríamos de saber o estado das teclas modificadoras (Ctrl, Alt e Shift) em um evento do mouse. O problema é que, nos eventos do mouse, o tratador do evento recebe objetos das classes EventArgs e MouseEventArgs e estas classes não possuem nenhuma informação que nos permita saber se estas teclas estão ou não pressionadas. A solução é usar o método ModifierKeys() da classe Control. Este método retorna um objeto da enumeração Keys, o que possibilita testar se as teclas Ctrl, Alt e Shift estão acionadas. Veja um exemplo: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
private void Form1_Click(object sender, EventArgs e){
MessageBox.Show(Control.ModifierKeys.ToString());
}
Ao clicar no formulário uma mensagem será exibida com um dos seguintes conteúdos: a) None = Nenhuma tecla modificadora está pressionada. b) Shift = A tecla Shift está pressionada. c) Alt = A tecla Alt está pressionada. d) Control = A tecla Ctrl está pressionada. d) Shift, Control, Alt = As três teclas modificadoras estão acionadas. Se quisermos testar uma tecla específica, por exemplo, Shift, podemos usar um código parecido com: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
private void Form1_Click(object sender, EventArgs e){
// vamos verificar se a tecla Shift está pressionada
if((Control.ModifierKeys & Keys.Shift) == Keys.Shift){
MessageBox.Show("A tecla Shift está pressionada");
}
else{
MessageBox.Show("A tecla Shift NÃO está pressionada");
}
}
Veja agora como testar as teclas Ctrl e Alt ao mesmo tempo: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
private void Form1_Click(object sender, EventArgs e){
// vamos verificar se as teclas Ctrl e Alt estao pressionadas
if(((Control.ModifierKeys & Keys.Control) == Keys.Control) &&
((Control.ModifierKeys & Keys.Alt) == Keys.Alt)){
MessageBox.Show("As teclas Ctrl e Alt estão pressionadas");
}
else{
MessageBox.Show("As teclas Ctrl e Alt NÃO estão pressionadas");
}
}
|
|
|
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 |






