Visual Basic - Restringir teclas

Life is soft - evento anual de software empresarial
 
Vista:

Restringir teclas

Publicado por Krator (71 intervenciones) el 19/09/2005 19:00:39
Hola, desde ya os doy las gracias por adelantado.

Verán. Tengo una caja de texto a la que quiero limitar un poco su contenido, para depurar.
Tengo 2 situaciones difentes para ellas.
En 1, deben poder escribirse todo, excepto caracteres extraños, como parentesis, puntos, etc. Pero además debe funcionar teclas como las de funcion, tab, espacio,borrar,etc.
En la otra, deben de poder escribirse unicamente números, pero que se pueda borrar, intro y estas teclas.

Yo he probado un poco, con el evento keypress, y jugando con los códigos, pero desconozco la mayoria de códigos de teclas como el intro, borrar, espacio etc.

A ver si alguno teneis algo parecido y me mostrais el camino...

Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 14
Ha aumentado 1 puesto en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

RE:Restringir teclas

Publicado por SuNcO (599 intervenciones) el 19/09/2005 19:58:47
Enter = 13
Tab = 8
Borrar = 9 (creo)
Espacio = 32

Es muy sencillo ver numero es, solamente pon MsgBox KeyAscii y presiona la que quieras saber
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Daniel

RE:Restringir teclas

Publicado por Daniel (360 intervenciones) el 19/09/2005 20:26:36
Para que sean solo numericos existeuna funcion llamada isnumeric

creo que es mas o menos asi

If not isnumeric(text1.text) then

msgbox ("ha ingresado valor que no son numericos"
end if
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Restringir teclas

Publicado por Juan_K (181 intervenciones) el 19/09/2005 21:00:45
Teniendo en cuenta los siguientes codigos
A-Z son los codigos 65-90
a-z son los codigos 97-122
0--9 son los codigos 48-57
Tab= 9
retro= 8
entrar= 13
espacio=32
Un ejemplo Simple:

Private Sub Text1_KeyPress(KeyAscii As Integer)
Select Case KeyAscii
Case 8, 9, 13, 27, 32, 48 To 57, 65 To 90, 97 To 122
Exit Sub
Case Else
MsgBox "Caracter no valido"
KeyAscii = 0
End Select

End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Restringir teclas

Publicado por Eli (49 intervenciones) el 20/09/2005 19:10:23
Con este código en el evento KeyPress de la caja de texto le permite digitar todo excepto lo que este en las comillas dobles

If InStr(".,()", Chr(KeyAscii)) <> 0 And KeyAscii <> 8 Then
KeyAscii = 0
End If

Para el siguiente caso solo me permite digitar números o lo que quieras agregar entre las comillas dobles

If InStr("0123456789", Chr(KeyAscii)) = 0 And KeyAscii <> 8 Then
KeyAscii = 0
End If

'Notese que lo que varía son los simbolos de = y <> antes del 0

'Esto va en el evento KeyPress de cada caja de texto

salu2, y suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Restringir teclas(gracias)

Publicado por Krator (71 intervenciones) el 21/09/2005 17:21:11
Gracias a todos amigos, han sido sus respuestas de muchisima utilidad.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar