Hola buenas lamento molestarlos miren tengo un pequeñísimo problema el cual es tengo un textbox el cual debe dejar escribir solo números y un punto para números decimales la cosa esta en que como tengo el código hasta el momento
no puedo ingresar:
- .423783 (lo cual esta bien)
pero si puedo ingresar:
- 4...45 (lo cual esta mal)
yo lo que quiero es que no pueda ingresar mas de un punto en el textbox les dejo el codigo a continuación.
Function ValidDigits(ByVal Digito As String, ByVal Texto As String) As Boolean
Dim entero As Integer = CInt(Asc(Digito))
Dim valorePermitidos As String = "1234567890."
If entero = 8 Then
ValidDigits = False
Else
If InStr(valorePermitidos, Digito) = 0 Or InStr(".", Digito) = 11 Then
ValidDigits = True
Beep()
ElseIf IsNumeric(Texto) Then
ValidDigits = False
Else
ValidDigits = True
Beep()
End If
End If
Return ValidDigits
End Function
Desde ya muchas gracias :)
Me da la impresión que lo que quieres lograr es algo tan simple como lo siguiente:
1 Agregar un TextBox al formulario que VB crea por defecto con un nuevo proyecto EXE.
2 Copiar el codigo siguiente en la sección Declaraciones del formulario.
Option Explicit
Private Sub Text1_KeyPress(KeyAscii As Integer)
Static Vez As Integer
If KeyAscii = 46 Then
If Not Vez = 0 Then
KeyAscii = 0
End If
Vez = Vez + 1
ElseIf Not (KeyAscii >= vbKey0 And KeyAscii <= vbKey9) _
And KeyAscii <> vbKeyBack And KeyAscii <> 45 Then
'Se descarta cualquier pulsación escepto las teclas permitidas
KeyAscii = 0
End If
End Sub
Ejecutar el proyecto.
muchas gracias :)