Aceitar só números em um campo de texto

Aceitar só números em um campo de texto

Nesta dica do Web Mundi.com veremos como programar em Visual Basic para fazer que um campo texto só aceite números durante a entrada de digitação.

Frequentemente necessitamos validar a digitação de dados feita pelo usuário, neste caso, pretendemos fazer com que exista somente a entrada de caracteres numéricos.

O evento Change() da textbox, é o melhor local para escrever o código de consistência.

Porém se utilizarmos, somente a função IsNumeric(), poderemos cometer um erro.

Por exemplo veja o seguinte código:

Private Sub Text1_Change()
If Not IsNumeric(Text1.Text) Then
Text1.Text = ""
End If

No caso acima se o usuário digitar um numero negativo (-130), o evento change do controle não aceita , pois o 1º caracter (-) não é um numero.

Para resolver este problema, utilize o seguinte código:

Private Sub Text1_Change()
If Not ValidateNumeric(Text1.Text) Then
Text1.Text = ""
End If
End Sub

Private Function ValidateNumeric(strText As String) _
As Boolean
ValidateNumeric = CBool(strText = "" _
Or strText = "-" _
Or strText = "-." _
Or strText = "." _
Or IsNumeric(strText))
End Function

Pronto! Agora seu programa em Visual Basic irá Aceitar só números em um campo de texto.

Obrigado

Espero que esta dica tenha sido útil e tenha lhe ajudado a aumentar seus conhecimentos na linguagem de programação Visual Basic da Microsoft.

Se você gostou, compartilhe estas dicas com um amigo ou participe de nossas redes sociais.
Conhece outras dicas de Visual Basic ?

Envie para nos em nossa pagina do Facebook.

Caso queira nos incentivar a criar mais conteúdos como este, prestigie nossos anunciantes.

Um Grande Abraço e até a próxima dica!

Renato Sanches
Gestor de TI – Tecnologia da Informação
Desenvolvedor desde 1988 nas linguagens de Programação: Clipper, Visual Basic, Delphi, HTML, ASP, PHP, T-SQL e PL/SQL.

Posts Similares