• Domingo 22 de Diciembre de 2024, 13:49

Autor Tema:  Solo numeros  (Leído 1887 veces)

andres69

  • Miembro MUY activo
  • ***
  • Mensajes: 117
  • Nacionalidad: mx
    • Ver Perfil
    • http://alldownload.foroes.net
Solo numeros
« en: Jueves 15 de Abril de 2010, 21:01 »
0
Amigos, tengo el siguiente poroblemilla: en una caja de texto agrege este codigo en el evento keypress, lo que hace es que solo admite puros numeros si yo oprimo la tecla de espaciado sale el mensaje de rror o cualquier otra tecla queno sea numero hasta ahora todo bien pero cuando yo intento eliminar un numero con la tecla de retroceso me sale el error y no se como cinfigurarle el codigo para que me acepte esa tecla y el sup. GRACIAS!

Código: Visual Basic
  1.  
  2.  If KeyAscii < 48 Or KeyAscii > 57 Then
  3.     KeyAscii = 0
  4.     MsgBox "Solo se permiten números", vbInformation, "MENSAJE"
  5.     End If
  6.  
  7.  

Nebire

  • Miembro HIPER activo
  • ****
  • Mensajes: 670
    • Ver Perfil
Re: Solo numeros
« Respuesta #1 en: Viernes 16 de Abril de 2010, 17:23 »
0
Claro, el problema está que keypress es un evento que sucede con el cambio...
La solución más óptima es utilizar el evento Validate.

el código dentro de dicho evento será algo como:

Código: Visual Basic
  1.  
  2. Private Sub Text1_Validate(Cancel As Boolean)
  3.     If IsNumeric(Text1.Text) = False Then
  4.         Cancel = True
  5.         ' por ejemplo avisamos
  6.        MsgBox "sólo una expresión numérica.."
  7.         
  8.         '  y por ejemplo borramos
  9.         Text1.Text = ""
  10.     Else
  11.         ' aquí el código que queramos hacer... sabiendo que es un número
  12.    End If
  13. End Sub
  14.  
  15.  
  16.  
  17.  
«Ma non troppo»
----> ModoVacaciones = False<----

andres69

  • Miembro MUY activo
  • ***
  • Mensajes: 117
  • Nacionalidad: mx
    • Ver Perfil
    • http://alldownload.foroes.net
Re: Solo numeros
« Respuesta #2 en: Viernes 16 de Abril de 2010, 21:14 »
0
Gracias Neberi por la yuda!

Te invito un par de cervezas :beer:
 :good: