Foros del Web » Programación para mayores de 30 ;) » Programación General »

Controlar las teclas

Estas en el tema de Controlar las teclas en el foro de Programación General en Foros del Web. Hola amigos. Alguien sabe si en Visual Basic se puede asignar una funcion especial a una tecla??? Es decir, Existe el evento Keypress pero es ...
  #1 (permalink)  
Antiguo 12/02/2004, 08:59
 
Fecha de Ingreso: noviembre-2003
Ubicación: Paraguay
Mensajes: 382
Antigüedad: 21 años
Puntos: 4
Exclamación Controlar las teclas

Hola amigos.

Alguien sabe si en Visual Basic se puede asignar una funcion especial a una tecla???

Es decir, Existe el evento Keypress pero es al presionar cualquier tecla.

Yo quiero que cuando el usuario presione una tecla en especial, pase algo.

Tambien por ejemplo, asignarle en un formulario a la tecla ENTER que funcione como el TAB para pasar de un control a otro.

Pienso que es muy incomodo tener que presionar el TAB cada vez de cargar numeros ir al tab en lugar de tener un enter al lado.

Si alguien sabe algo de una manito

gracias.
micayael
  #2 (permalink)  
Antiguo 12/02/2004, 10:07
 
Fecha de Ingreso: febrero-2004
Mensajes: 2
Antigüedad: 20 años, 9 meses
Puntos: 0
llevo rato que no trabajo en VB.. el evento keypress se puede especificar por teclas, ya que el almacena la tecla pulsada en una variable.. solo tienes que compararla en un condicional if o case y listo . para saltar con el enter el codigo es el 13 para el valor del keypress, solo tienes que activer el evento setfocus y la caja de texto a la que vas a saltar.

espero que esto te sirva ok
  #3 (permalink)  
Antiguo 12/02/2004, 12:30
 
Fecha de Ingreso: noviembre-2003
Ubicación: Paraguay
Mensajes: 382
Antigüedad: 21 años
Puntos: 4
GUAU. PUES... (segun entiendo)
Para la primera parte:
como comparo en un condicional eso???
y la segunda:
como que el codigo es el 13 donde introduzco ese codigo y,
si activé el Evento keypress como activo el setFocus tambien.

Perdoname pero no entiendo.
__________________
http://blog.micayael.com
  #4 (permalink)  
Antiguo 12/02/2004, 14:29
 
Fecha de Ingreso: enero-2004
Ubicación: BARCELONA
Mensajes: 49
Antigüedad: 20 años, 9 meses
Puntos: 0
el tab

CON ESTO CADA VEZ QUE PULSES ENTER, SERA UN TAB
********************************************
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then SendKeys vbTab
End Sub
*******************************************
[email protected]
  #5 (permalink)  
Antiguo 13/02/2004, 06:55
 
Fecha de Ingreso: noviembre-2003
Ubicación: Paraguay
Mensajes: 382
Antigüedad: 21 años
Puntos: 4
Eso si que esta de pelos hombre. Excelente. Son unos genios.

Me imagino que para asignar una tecla entonces tengo que hacer

If KeyAscii = "A" Then alguna tarea especifica pero como lo hago con las teclas que no son letras? o todas tienen un numero asi como el ENTER es 13? Si es asi, donde puedo conseguir una lista de esos numero.

Gracias amigos me estan ayudando muchisimo. es para un trabajo practico
__________________
http://blog.micayael.com
  #6 (permalink)  
Antiguo 13/02/2004, 07:35
 
Fecha de Ingreso: enero-2004
Ubicación: BARCELONA
Mensajes: 49
Antigüedad: 20 años, 9 meses
Puntos: 0
Hola micayael
Lo primero es que no te puedes referir por ejemplo:
If Keyascii = "A" Then..................
Por todas la tecla tienen un codigo, Por ejemplo con la (A)
If Keyascii=65 Then........
Si quieres puedes hacer algo para ir probando.
***********************************************
Text2.text= Keyascii
**********************************************
USA DOS TEXT, PON ESTO EN EL EVENTO Keypress DE TEXT1
suerte.
[email protected]
  #7 (permalink)  
Antiguo 13/02/2004, 07:48
 
Fecha de Ingreso: noviembre-2003
Ubicación: Paraguay
Mensajes: 382
Antigüedad: 21 años
Puntos: 4
Gracias bezael eres un genio viejo.
__________________
http://blog.micayael.com
  #8 (permalink)  
Antiguo 18/02/2004, 15:54
 
Fecha de Ingreso: enero-2004
Ubicación: BARCELONA
Mensajes: 49
Antigüedad: 20 años, 9 meses
Puntos: 0
----------Teclas---------

La Insert es 45 o VbKeyInsert
X Eje:
*****************************************
If KeyCode = vbKeyInsert Then
MsgBox " HOLA "
End If
*****************************************
IGUAL SERIA ESTO
*****************************************
If KeyCode = 45 Then
MsgBox " HOLA "
End If
****************************************
SUERTE,
[email protected]
  #9 (permalink)  
Antiguo 02/08/2004, 21:50
Avatar de sjam7  
Fecha de Ingreso: diciembre-2001
Ubicación: Guadalajara, Mexico
Mensajes: 3.672
Antigüedad: 22 años, 11 meses
Puntos: 16
alguien sabe como prorgamaar un evento para una convinacion de teclas? como por ejemplo CTRL + ENTER
__________________
CreandoWebs.com
www.creandowebs.com
PLANTILLAS TEMPLATEMONSTER CON 10% DE DESCUENTO
  #10 (permalink)  
Antiguo 03/08/2004, 07:11
 
Fecha de Ingreso: enero-2004
Ubicación: BARCELONA
Mensajes: 49
Antigüedad: 20 años, 9 meses
Puntos: 0
De acuerdo respuesta

Hola, esto puede ayudarte.
************************************************** ****

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
If Shift = 2 And KeyCode = vbKeyReturn Then
MsgBox " Presionaste (CTRL) Y (ENTER) "
End If
End Sub
************************************************** *****
Recuerda poner KEYPREVIEW en el FORMULARIO a TRUE
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 2 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 14:14.