Visual Basic - Ayuda urgente con el Ascii

Life is soft - evento anual de software empresarial
 
Vista:

Ayuda urgente con el Ascii

Publicado por Deivid46 (4 intervenciones) el 19/11/2006 17:18:27
Alguien podria ayudarme? Necesito que en un TextBox solo se puedan escribir letras Mayúsculas, sin espacios, signos, acentos ni nada más. Es decir = HOLAMELLAMODAVID.
Prové con :

Sub Text3_KeyPress(KeyAscii As Integer)
If ((KeyAscii < 65) Or (KeyAscii > 90)) Then KeyAscii = 0
End Sub

pero de esta manera el botón de retroceso ( para borrar ) y Copy, Paste ( Ctrl + C o V ) no funcionan, como podria activarlos¿? Almenos Retroceso
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

RE:Ayuda urgente con el Ascii

Publicado por Juan (28 intervenciones) el 19/11/2006 18:16:27
Hola. La solucion es sencilla, averiagua cuales son los codigos ASCII de las teclas que quieras aceptar (espacio, retroceso...) y metelas en la condicional. lo que ya no sabria es que te dejara también copiar y pegar con ctrl+v/c.

Espero que te valga por lo menos para lo del retroceso. Saludos.
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:Ayuda urgente con el Ascii

Publicado por Deivid46 (4 intervenciones) el 19/11/2006 19:23:31
No me vale.. porque precisamente eso es lo que no encuentro ^^".. me bastaría solo con la de retroceso, pero no la encuentro. Si alguien supiese su valor me haría un gran favor
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:Ayuda urgente con el Ascii

Publicado por Alex (40 intervenciones) el 19/11/2006 19:31:01
El código ASCII de la tecla de retroceso es el 8
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:Ayuda urgente con el Ascii

Publicado por Deivid46 (4 intervenciones) el 19/11/2006 19:35:05
yo también vi por internet que ponian algo así pero no.. si tu escribes 8 en ASCII ( alt + 8 ) te sale ◘ cuando lo que realmente debería ocurrir esque se te borrase el carácter anterior ( es decir, la función de retroceso ).
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:Ayuda urgente con el Ascii

Publicado por Alex (40 intervenciones) el 19/11/2006 19:43:52
El código ASCII 8 no es un caracter imprimible, por lo tanto te sale ese símbolo.
Pon esto en un formulario:

Private Sub Text3_KeyPress(KeyAscii As Integer)
If KeyAscii = 8 Then MsgBox "Has pulsado retroceso"
End Sub
y borrará el carácter que esté a la izquierda del cursor (si lo hay)
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:Ayuda urgente con el Ascii

Publicado por Deivid46 (4 intervenciones) el 19/11/2006 19:45:53
Si si, lo siento, ahora mismo iva a postear. Vi donde estaba el fallo, un comando antes me anulaba la operación ( un despiste ^^" ) y yo mismo pude comprobar con el KeyAscii que cuando pulsaba la tecla le daba el valor 8 si. Gracias igualmente por sus respuestas!!
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:Ayuda urgente con el Ascii

Publicado por Alejandro (33 intervenciones) el 20/11/2006 21:10:56
para saber le valor ascii del teclado solo tienes que buscar la propiedad del textbox donde aparece keycode y poner lo siguiente:

msgbox keycode

lo ejecutas y cada vez que preciones una tecla te mostrara un mensaje con el valor de la tecla
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
sin imagen de perfil

RE:Ayuda urgente con el Ascii

Publicado por ricaurtem (313 intervenciones) el 20/11/2006 22:35:51
Miren para saber cual es el codigo de cada tecla, hagan esto


msgbox keycode, en el evento keydown del control (textbox)

o

msgbox keyAscci en el evento keycode del control (textbox)

el Keycode para el retroceso es el 8

para el CTRL es 17, C = 67 , V= 86

pero el CTRL + C y el CTRL + V ,es algo diferente se maneja mejor en el evento keycode ya que sino programarias para minuscula y mayuscula, y para numeros es mejor keydown para programar el teclado numerico en cosas como un grid.

la idea para CTRL + C o V es asi:

Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If Shift = 2 And KeyCode = 67 Then
MsgBox "copio"
ElseIf Shift = 2 And KeyCode = 86 Then
MsgBox "pego"
End If
End Sub

esto es para VBA, lo hice en la oficina, en VB es aglo similar. espero te sirva
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