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

seleccionar texto de una web y almacenarlo en variable automaticamente

Estas en el tema de seleccionar texto de una web y almacenarlo en variable automaticamente en el foro de Visual Basic clásico en Foros del Web. Muy buenas tardes a todos, Os comento mi problemilla: Quiero hacer un boton muy simple que situe el raton en un punto determinado de la ...
  #1 (permalink)  
Antiguo 16/01/2009, 10:08
 
Fecha de Ingreso: enero-2009
Mensajes: 12
Antigüedad: 15 años, 3 meses
Puntos: 0
seleccionar texto de una web y almacenarlo en variable automaticamente

Muy buenas tardes a todos,
Os comento mi problemilla: Quiero hacer un boton muy simple que situe el raton en un punto determinado de la pantalla y lo mueva para seleccionar un texto, posteriormente me gustaria almacenar ese texto en una variable.
Soy nuevo en las APIs y he conseguido situar el raton y arrastrarlo para que me seleccione el texto, pero no se como almacenarlo en una variable. El codigo hasta el momento es el siguiente:

Option Explicit

Private Type POINTAPI
X As Integer
Y As Integer
End Type

Private Declare Function SetCursorPos Lib "user32" (ByVal X As Long, ByVal Y As Long) As Long

Private Declare Sub mouse_event Lib "user32" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long)

Const IZQUIERDOABAJO = &H2
Const IZQUIERDOARRIBA = &H4

Private Sub seleccionar_Click()
'aqui activamos la ventana que se llama trucos
AppActivate ("TRUCOS")

'esto selecciona
Call SetCursorPos(130, 300)
mouse_event IZQUIERDOABAJO, 0, 0, 0, 0
Call SetCursorPos(230, 300)
mouse_event IZQUIERDOARRIBA, 0, 0, 0, 0

----------------------------------------------
He estado leyendo y he usado el sendkeys, pero aunque todo va bien, no consigue copiar nada (cuando le doy a pegar no pega lo que yo se supone que he copiado). Tambien he probado a copiar programando que el raton le haga un click derecho en el texto y le de un click a copiar, pero estoy en las mismas y la realidad es que no copia nada.

¿Alquien podria echarme una mano? Muchisimas Gracias
  #2 (permalink)  
Antiguo 16/01/2009, 10:32
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: seleccionar texto de una web y almacenarlo en variable automaticamente

¿Qué es exactamente lo que pretendes hacer? Dependiendo del caso es más fácil usar SendMessage (con el mensaje WM_GETTEXT) para obtener el texto deseado.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 16/01/2009, 11:03
 
Fecha de Ingreso: enero-2009
Mensajes: 12
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: seleccionar texto de una web y almacenarlo en variable automaticamente

Cita:
Iniciado por David el Grande Ver Mensaje
¿Qué es exactamente lo que pretendes hacer? Dependiendo del caso es más fácil usar SendMessage (con el mensaje WM_GETTEXT) para obtener el texto deseado.
Gracias por responder, lo que pretendo hacer es que, en función de lo que haya en el texto seleccionado, el raton realice unos movimientos u otros (el texto siempre esta en el mismo sitio, pero no siempre será el mismo, por lo que creo que necesito almacenarlo en una variable y entonces hacer un sencillo IF). Espero haber aclarado la situación
  #4 (permalink)  
Antiguo 16/01/2009, 11:18
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: seleccionar texto de una web y almacenarlo en variable automaticamente

No sé, pero me parece poco práctico lo que tratas de hacer, arrastrar el mouse, seleccionar el texto y obtenerlo (de hecho, puedes obtener el texto seleccionado con http://msdn.microsoft.com/en-us/libr...98(VS.85).aspx), dime, ¿de qué aplicación o de qué exactamente quieres obtener el texto?
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #5 (permalink)  
Antiguo 16/01/2009, 11:27
 
Fecha de Ingreso: enero-2009
Mensajes: 12
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: seleccionar texto de una web y almacenarlo en variable automaticamente

Cita:
Iniciado por David el Grande Ver Mensaje
No sé, pero me parece poco práctico lo que tratas de hacer, arrastrar el mouse, seleccionar el texto y obtenerlo (de hecho, puedes obtener el texto seleccionado con "pagina web", dime, ¿de qué aplicación o de qué exactamente quieres obtener el texto?
Lo que pretendo es obtener el texto de un programa de gestión de trabajadores que se llama SAP, el texto pone si el trabajador es de dia o de noche y en funcion a eso los botones que hay que pulsar en el programa son diferentes, de ahi que necesite sacar ese texto.
  #6 (permalink)  
Antiguo 16/01/2009, 12:16
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: seleccionar texto de una web y almacenarlo en variable automaticamente

En ese caso lo mejor es usar FindWindow para obtener el hWnd de la ventana, luego sucesivas llamadas a FindWindowEx para llegar al control que necesitas (obtener su hWnd) y luego usar GetWindowText para obtener su texto. (O en algunos casos SendMessage con el mensaje WM_GETTEXT).

Eso es mucho mejor que tratar de hacer malabarismos con mouse_event.

Saludos .

P.D.: Revisa este tema, hablamos mucho del uso de esas funciones: http://www.forosdelweb.com/f69/visua...essage-619653/
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #7 (permalink)  
Antiguo 16/01/2009, 12:32
 
Fecha de Ingreso: enero-2009
Mensajes: 12
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: seleccionar texto de una web y almacenarlo en variable automaticamente

Cita:
Iniciado por David el Grande Ver Mensaje
En ese caso lo mejor es usar FindWindow para obtener el hWnd de la ventana, luego sucesivas llamadas a FindWindowEx para llegar al control que necesitas (obtener su hWnd) y luego usar GetWindowText para obtener su texto. (O en algunos casos SendMessage con el mensaje WM_GETTEXT).

Eso es mucho mejor que tratar de hacer malabarismos con mouse_event.

Saludos .

P.D.: Revisa este tema, hablamos mucho del uso de esas funciones:

muchas gracias, vere que puedo hacer con el nivel que tengo
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 01:55.