Página 1 de 1

ayuda con controles win !

Publicado: 23 Sep 2010, 16:55
por Andres_sc
Hola amigos de autoit otra vez x aca esta vez nesecito ayuda sobre los controles win
kiero leer el txt dentro de una ventana.

1° Uso la funcion WinActivate() para detectar la ventana, pero mi primer duda es si hay una forma ke lea solamente una parte de la ventana ya ke no siempre es el mismo nombre.
ej: WinActivate("Ares 2.1.1.3035 [Chat]*.*", "") aveces es Ares 2.1.1.3035 [Chat] -<Online (y aca el tiempo)(o algo ke este descargando) >
hay alguna forma de ke me informe error si es ke no lee esa ventana?

2°Hay alguna forma de leer un texto dentro de esa ventana y ke devuelva un msgboox?
Estuve probando con Opt("WinDetectHiddenText", 1)
pero no se como hacer para ke me devuelva el txt leido en msgbox o para leer un texto especifico.
Por ejemplo cada vez ke escriban "Hola" ke me de un msgboox.
espero ser claro dejo el code de lo ke hice hasta ahora :smt023

Código: Seleccionar todo

#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

$Form1 = GUICreate("Form1", 227, 117, 192, 124)
GUISetBkColor(0x343434)
$Button1 = GUICtrlCreateButton("Espia", 65, 32, 97, 33, $WS_GROUP)
GUISetState(@SW_SHOW)


While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit
		case $Button1
			WinActivate("Ares 2.1.1.3035 [Chat]*.*", "")
			Opt("WinDetectHiddenText", 1)   ;0=no detectar, 1=detectar
        MsgBox(0,"texto Hola detectado","")
	EndSwitch
WEnd
desde ya gracias por la ayuda :smt006

Re: ayuda con controles win !

Publicado: 24 Sep 2010, 12:30
por BasicOs
hOLA de nuevo,
la 1º-> las funciones windows funcionan por defecto con la parte de texto del substring que pones por ejemplo con WinWait() pones "Ares 2.1.1" y trabaja automaticamente con el trozo de string que pones y se olvida del final. (Mira las opciones que tambien puede trabajar de otra manera y tambien con la función de opciones iniciales OPT() como ya lo usaste). :smt020
la 2º-> Usa la herramienta au3Info del editor Scite para identificar los textos, luego con las funciones de comparación Win o de recuperar valores de los controles como ControlGetText. En caso de que con Au3Info no te salga el texto que buscas, puedes emplear otras técnicas como llamadas al programa, a un archivo temporal que use, o la solución que nunca falla que son las funciones PIXEL, con las que puedes buscar si ha cambiado de color blanco el control o el trozo de pantalla , a escribir algo, o bien hasta crear un OCR para leer lo que escribe. :smt033
Salu22:)
Algunos enlaces con varias opciones de messenger:
http://www.emesn.com/autoitforum/search ... r&start=20
Como reconocer un evento y actuar con el robot: http://www.emesn.com/autoitforum/viewto ... nger#p8533

Re: ayuda con controles win !

Publicado: 24 Sep 2010, 17:24
por Andres_sc
Gracias por responder y consejos Basicos :smt023
ya avia probado con WinWait() pero solo lee cuando se abre la ventana y si ya estaba abierto no me funciono :smt017
por eso utilize WinActivate().
la herramienta au3Info la probe y si lee todos los textos pero no tengo idea de como usarlo ya ke soy nobato en esto :smt022
voy a probar con ControlGetText aver ke sale gracias :smt003
saludos :smt006