Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: Dartor en 14 Octubre 2010, 21:36 pm



Título: Un problemita
Publicado por: Dartor en 14 Octubre 2010, 21:36 pm
Buenos Dias.

sucede que estoy creando un teclado virtual, que al oprimir la letra Q en la pantalla Cambie al color rojo la letra, y asi con todas las letras.

lo que me pasa es que a la hora de correr el programa solo puedo oprimir la tecla que tiene el focus si quiero oprimir otra tecla debo oprimir TAB o Click.


como hago para no tener que oprimir Tab ni click y que pueda oprimir las teclas sin problema.

Utilizo Visual Basic 6.

Gracias de ante mano.


Título: Re: Un problemita
Publicado por: Psyke1 en 14 Octubre 2010, 22:19 pm
Prueba con:

a.- Timer + Api GetAsyncKeyState
b.- Hook
c.- Evento KeyDown\KeyPress\KeyUp del Form.

Depende la situacion en la que estes.
Si lo que necesitas es que se mantenga roja el tiempo que tu la mantengas presionada tiene que ser un Hook.

DoEvents! :P


Título: Re: Un problemita
Publicado por: raul338 en 14 Octubre 2010, 22:42 pm
PsYkE1 creo que no lo entendiste :xD

Dartor lo que necesitas es llamar a SetWindowPos con la constante NO_FOCUS (o algo asi) para que nunca tenga el foco :)

De ultima si no te sale podes obtener el hwnd con GetActiveWindow... asi si se te activa el form puedes activar con SetWindowFocus y mandar la tecla :)


Título: Re: Un problemita
Publicado por: Psyke1 en 14 Octubre 2010, 23:56 pm
Jajajjaja :laugh: :laugh: :laugh: :laugh:
Cierto, no se donde tenia la cabeza... :rolleyes:

DoEvents! :P


Título: Re: Un problemita
Publicado por: Dartor en 16 Octubre 2010, 21:17 pm
Muchas Gracias a Todos ya lo pude solucionar  ;D