Como Forçar a Digitação de Caracteres Maiúsculos no Visual Basic
Se você deseja que o usuário digite apenas em maiúsculas, independentemente do estado da tecla Caps Lock, pode converter os caracteres no evento KeyPress.
Implementação no Evento KeyPress
Utilize o seguinte código no evento KeyPress do formulário:
Private Sub Form_KeyPress(KeyAscii As Integer)
KeyAscii = Asc(UCase(Chr(KeyAscii)))
End Sub
Explicação
-
Chr(KeyAscii): Converte o código ASCII da tecla pressionada para um caractere. -
UCase(): Transforma o caractere para maiúsculo. -
Asc(): Retorna o código ASCII do caractere convertido, garantindo que seja armazenado como maiúsculo.
Aplicando a Rotina a Todos os Campos do Formulário
Para que esse comportamento seja aplicado a todos os campos do formulário, defina a propriedade KeyPreview do formulário como True.
Form1.KeyPreview = True
Isso garante que o evento KeyPress seja capturado antes de ser processado pelos controles individuais.