Usuário com melhor resposta
Como bloquear uma tecla específica em VB

Pergunta
-
Boa tarde. Gostaria de saber como faço pra bloquear apenas uma tecla do teclado enquanto roda a aplicação. Especificamente queria bloquear o Numpad0. Não sei como fazer, já tentei alguns códigos, mas só acho pra atalhos, mas não é isso, eu quero apenas pra uma única tecla que eu queira, como o número 0 da calculadora do teclado. Porém não quero que ela seja bloqueada no início da aplicação, mas criei um "Public" de valor 4 chamado "TeclaZERO" e cada vez que aperta o Numpad0 ele vai diminuindo em 1:
Public Class Form1 Public TeclaZERO = 4
'Aqui em baixo é no evento KeyDown da Form1: If e.KeyCode = Keys.NumPad0 Then TeclaZERO -= 1 End If
Criei um Timer chamado de "AppTime" que inicia junto com a form e é esse timer que vai dizer pra aplicação quando é a hora de bloquear o Numpad0, quando ele for apertado o mesmo tanto de vezes que eu colocar na Public TeclaZero:
Private Sub AppTime_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles AppTime.Tick If TeclaZERO = 0 Then 'E é aqui que quero colocar o código para bloquear o Numpad0. End If
End Sub
É basicamente isso que eu preciso, colocar um código ali no meio, que bloqueia a tecla Numpad0 se o valor da public for igual a 0.
Desde já, agradeço se alguém poder ajudar. Obrigado.
Respostas
-
Obrigado novamente pela ajuda, mas esses links levam a outros, que estão em C# e eu precisava para VB. Normalmente eu usaria o "codeconverter" para converter de C# para VB.NET. Mas felizmente, fussando aqui já consegui resolver o problema, pensando um pouco consegui desenvolver um código muito simples que resolveu 101% meu problema, sem precisar de muitas linhas de códigos e sem precisar desativar o KeyPreview da form, até porque mesmo desativando ele continua funcionando. De qualquer forma muito obrigado pela sua ajuda.
- Editado Vini lima sábado, 4 de fevereiro de 2017 22:32
- Marcado como Resposta Robson William SilvaModerator segunda-feira, 6 de fevereiro de 2017 11:38
Todas as Respostas
-
Boa tarde Vini,
Por gentileza, verifique as sugestões neste link:
Atenciosamente,
Robson William Silva
Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita
MSDN Community Support
Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.
-
Obrigado novamente pela ajuda, mas esses links levam a outros, que estão em C# e eu precisava para VB. Normalmente eu usaria o "codeconverter" para converter de C# para VB.NET. Mas felizmente, fussando aqui já consegui resolver o problema, pensando um pouco consegui desenvolver um código muito simples que resolveu 101% meu problema, sem precisar de muitas linhas de códigos e sem precisar desativar o KeyPreview da form, até porque mesmo desativando ele continua funcionando. De qualquer forma muito obrigado pela sua ajuda.
- Editado Vini lima sábado, 4 de fevereiro de 2017 22:32
- Marcado como Resposta Robson William SilvaModerator segunda-feira, 6 de fevereiro de 2017 11:38