Visual Basic - Keyprees y Sendkeys

Life is soft - evento anual de software empresarial
   
Vista:

Keyprees y Sendkeys

Publicado por Thunder (4 intervenciones) el 06/04/2015 02:10:50
Hola chicos buenas noches , tenia un problema que no lo puedo solucionar.
Quiero usar el evento keyprees , mediante el cual aprieto la tecla tabulador y manda un sendkeys para que se apriete el enter.
Lo quiero utilizar en el buscador de internet , lo que pasa esque cuando lo aprieto no funciona no manda nada. Lo que hice fue probarlo haciendolo en un textbox y anduvo. No se cual sera mi error si alguien podria ayudarme se lo agradeceria gracias.
Les dejo aqui el codigo que estoy utilizando :

Private Sub form1_KeyPress(KeyAscii As Integer)
If KeyAscii = "9" Then SendKeys "({Enter})"

End Sub
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

Keyprees y Sendkeys

Publicado por Juan Gilberto (278 intervenciones) el 06/04/2015 17:25:15
Las Formas tienen una propiedad llamda KEYPREVIEW, establecela a True


Esto hace que los eventos del teclado se reflejen antes en la forma que en los controles (textboxes, etc)
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

Keyprees y Sendkeys

Publicado por Thunder (4 intervenciones) el 06/04/2015 19:55:40
Hola juan gracias por responder , Hice lo que me dijiste puse keypreview en true , pero igual sigue sin funcionar , compile y fui directo al buscador presione el tab y sigue sin hacer enter. Habra otro problema que me estoy pasando?
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

Keyprees y Sendkeys

Publicado por Juan Gilberto (278 intervenciones) el 07/04/2015 17:07:06
En cuanto al KeyPreview y el SendKeys se me hace que si esta funcionando...

Donde tengo duda es como le estes haciendo para activar el explorador de internet, ya que SendKeys sireve para enviar teclasos a la ventana activa en ese momento

Ahi te va un ejemplo pero utilizando la calculadora
El codigo carga la calculadora
La hace la ventana activa
Le envia teclasos
Etc.

1
2
3
4
5
6
7
8
9
10
11
12
Dim ReturnValue, I
 
    ReturnValue = Shell("CALC.EXE", 1)   ' Ejecuta Calculadora
 
    AppActivate ReturnValue                       ' Activa la Calculadora
 
    For I = 1 To 100
        SendKeys I & "{+}", True                  ' Envia teclasos a la Calculadora... simulando sumar cada numero
    Next I
 
    SendKeys "=", True                              ' totaliza
    SendKeys "%{F4}", True                      ' Envia ALT+F4 para cerrar la Calculadora
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

Keyprees y Sendkeys

Publicado por Thunder (4 intervenciones) el 08/04/2015 00:18:18
hola Juan gracias por tu respuesta.
Respondiedote si las senkeys y keypress funcionan de maravilla lo que no funciona es en la ventada de la web. sino que hay que estar si o si posicionado en el form para que ande.
Con tu ejemplo me ubique bastante y lo que hice fue adaptarlo quedo asi


Dim ReturnValue, I

ReturnValue = Shell("chrome.exe", 1)

AppActivate ReturnValue

End Sub

Private Sub Form_KeyPress(KeyAscii As Integer)
If keypressascii = "9" Then SendKeys "({ENTER})"
End Sub

Lo que pasa ahora es que cuando trato de compilarlo o ejecutarlo me tira un error que dice : "Error de compilacion , el procedimiento externo no es valido " .
Los codigos estan mal ubicados??
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

Keyprees y Sendkeys

Publicado por Juan Gilberto (278 intervenciones) el 08/04/2015 16:37:12
Se detiene en alguna linea de codigo? En cual?
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

Keyprees y Sendkeys

Publicado por Thunder (4 intervenciones) el 08/04/2015 20:10:25
si se detiende en ReturnValue = Shell(chrome.exe, 1) y si borro chrome.exe , se detiende en
ReturnValue = Shell( ,1)
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

Keyprees y Sendkeys

Publicado por Juan Gilberto (278 intervenciones) el 09/04/2015 16:31:03
Probablemente sea necesario que pongas toda la ruta de chrome.exe

En mi pc esta asi ---> "C:\Archivos de programa\Google\Chrome\Application\chrome.exe"

Yo probaria entonces con :

1
ReturnValue = Shell("C:\Archivos de programa\Google\Chrome\Application\chrome.exe", 1)
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 Hector moran

Keyprees y Sendkeys

Publicado por Hector moran (15 intervenciones) el 09/04/2015 01:56:51
aca tienes esta solucion pruebala Jesucristo te AMA!!!

1
2
3
4
5
6
7
8
Private Sub Form_KeyPress(KeyAscii As Integer)
'
If KeyAscii = 13 Then
   SendKeys "{tab}"
   KeyAscii = 0
End If
'
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