Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Mantener Control "Ctrl" precionado

Estas en el tema de Mantener Control "Ctrl" precionado en el foro de Visual Basic clásico en Foros del Web. Hola... me precento aqui como un programador viejo casi veterano xd... pero la cosa es q me jui al vicio de los juegos y ahora ...
  #1 (permalink)  
Antiguo 24/05/2008, 09:54
 
Fecha de Ingreso: enero-2008
Mensajes: 23
Antigüedad: 16 años, 3 meses
Puntos: 0
Pregunta Mantener Control "Ctrl" precionado

Hola... me precento aqui como un programador viejo casi veterano xd... pero la cosa es q me jui al vicio de los juegos y ahora q necesito hacer un programa toy en 0 ...

he visto este comando:

Cita:
SendKeys.Send(”{tab}”)
pero no se como se hace para la tecla Control o "Ctrl"
como les guste llamarlo ...
intente hacer algo haci

Cita:
SendKeys.Send(^)
pero no funciono

y otra cosa es q necesito q paresca q quede precionado, como si fuece q presiono la tecla y no la soltara ...

de antemano muchas gracias...

Salu2!
  #2 (permalink)  
Antiguo 24/05/2008, 14:28
 
Fecha de Ingreso: enero-2007
Ubicación: Tingo María - Perú
Mensajes: 399
Antigüedad: 17 años, 3 meses
Puntos: 13
Respuesta: Mantener Control "Ctrl" precionado

Aqui hay un hilo que te puede ayudar

http://www.forosdelweb.com/f69/simul...etecte-472829/
__________________
Vivir para ser buenos y ser buenos para servir mejor.
  #3 (permalink)  
Antiguo 24/05/2008, 15:13
 
Fecha de Ingreso: enero-2008
Mensajes: 23
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: Mantener Control "Ctrl" precionado

muhcas gracias por tu respuesta ahora veo el link q me pasaste... estoy con una amiga en el msn

Salu2!
  #4 (permalink)  
Antiguo 24/05/2008, 15:32
 
Fecha de Ingreso: enero-2008
Mensajes: 23
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: Mantener Control "Ctrl" precionado



ben ta mejorcito q el anterior codigo con el q trate de usar...

ahora toy usando haci...

Cita:
Public Class Form1

Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
Const KEYEVENTF_KEYUP = &H2
Const VK_LWIN = &H5B


Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick

Call keybd_event(38, 0, 0, 0)
Call keybd_event(38, 0, KEYEVENTF_KEYUP, 0)

'Call keybd_event(VK_LWIN, 0, 0, 0)
'Call keybd_event(VK_LWIN, 0, KEYEVENTF_KEYUP, 0)

Timer1.Enabled = False

End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Timer1.Enabled = True

End Sub
End Class
eso probe en el vb2005 y me funcione bien... pero una preguntita q parte del codigo

Cita:
Call keybd_event(38, 0, 0, 0)
Call keybd_event(38, 0, KEYEVENTF_KEYUP, 0)
modifico para q me apriete el "Ctrl" el 38?

Muchas gracias...

Salu2!

EDD: mmm como soy curioso movi algunas cosas y me di cuenta q

q estas constantes son las q dicen q teclas
Cita:
Const KEYEVENTF_KEYUP = &H2
Const VK_LWIN = &H5B
ahora voy a tratar de buscar la traduccion de Ctrl a eso codigo

Última edición por leandro_ortega; 24/05/2008 a las 15:44
  #5 (permalink)  
Antiguo 24/05/2008, 15:56
 
Fecha de Ingreso: enero-2008
Mensajes: 23
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: Mantener Control "Ctrl" precionado

ammm una preguntita como se llaman estos caracteres???

&H5B

Salu2!
  #6 (permalink)  
Antiguo 24/05/2008, 16:02
 
Fecha de Ingreso: enero-2008
Mensajes: 23
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: Mantener Control "Ctrl" precionado

muchas gracias boluart

por tu ayuda me facilitaste todo logre hacerlo nomas xd

Cita:
Public Class Form1

Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
Const KEYEVENTF_KEYUP = &H2
Const VK_Ctrl = &H11


Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick

Call keybd_event(VK_Ctrl, 0, 0, 0)
Call keybd_event(VK_Ctrl, 0, KEYEVENTF_KEYUP, 0)


Timer1.Enabled = False

End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Timer1.Enabled = True

End Sub
End Class
Salu2!
  #7 (permalink)  
Antiguo 24/05/2008, 19:17
 
Fecha de Ingreso: enero-2007
Ubicación: Tingo María - Perú
Mensajes: 399
Antigüedad: 17 años, 3 meses
Puntos: 13
Respuesta: Mantener Control "Ctrl" precionado

Bueno no me diste tiempo a responder...
a y espero que te haya ido bien con tu amiga del msn

hay dos tipos de eventos cuando se presiona una tecla

El KeyDown que es cuando se preciona
El KeyUp que es cuando se suelta

por eso es que se llama al evento keybd_event dos veces.
La primera es para que empiece a precionar y la segunda para que deje de precionar

Call keybd_event(38, 0, 0, 0) ' KeyDown
Call keybd_event(38, 0, KEYEVENTF_KEYUP, 0) ' KeyUp

si mal no recuerdo tu querias que se quede precionado entonces tendrias que llamar solo una vez (solo la primera vez - KeyDown)

y es cierto el parametro 38 es el codigo ascii de la tecla a precionar en el ejemplo si mal no recuerdo es la flecha de desplazamiento hacia arriba (espero no equivocarme), en tu caso tendrias que cambiar el 38 por el codigo ascii de la tecla Ctrl.

Espero que haya quedado todo claro.
Saludos
__________________
Vivir para ser buenos y ser buenos para servir mejor.
  #8 (permalink)  
Antiguo 25/05/2008, 06:40
Avatar de seba123neo  
Fecha de Ingreso: febrero-2007
Ubicación: Esperanza, Santa Fe
Mensajes: 1.046
Antigüedad: 17 años, 2 meses
Puntos: 19
Respuesta: Mantener Control "Ctrl" precionado

Hola,la verdad no te recomiendo que hagas eso ,te puede quedar la tecla apretada todo el tiempo si no le pones el evento para que suba la tecla te quedara apretada,y es un desastre,tendrias que reiniciar la pc para que se reestablesca..es como simular n click con el mouse,siempre tenes qeu poner el down,y despues el up,si no llegas a poner el up inmaginate el pobre mouse apretado todo el tiempo,hay que tener cuidado en eso...

saludos.
__________________
" Todos Somos Ignorantes; lo que pasa es que no todos ignoramos las mismas cosas " - Albert Einstein
  #9 (permalink)  
Antiguo 25/05/2008, 08:25
 
Fecha de Ingreso: enero-2008
Mensajes: 23
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: Mantener Control "Ctrl" precionado

mmmm hola ...

se destraba con solo presionar la tecla...

Salu2!
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




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