Estoy intentando leer el contenido de un Get de una ventana desde otra ventana independiente. Efectivamente, leo el valor inicial del Get pero aunque escriba en él algo diferente, siempre leo el valor inicial.
Alguien podría mirarse estos dos prgs y decirme qué estoy haciendo mal? (ambos se compilan con Buildh.bat)
El programa que captura:
Code:
//----------------------------------------------------------------------------//
// Capt.prg - Prueba de captura de otra ventana
//----------------------------------------------------------------------------//
#include "FiveWin.ch"
#define GW_CHILD 5
#define GW_HWNDNEXT 2
FUNCTION Main()
LOCAL oWnd, hWnd, hCtrl, cClassName, cTitle
cTitle := PADR("TEST", 200)
IF MsgGet( "Entre titulo de una ventana abierta", "Titulo:", @cTitle)
hWnd := FindWindow( 0, ALLTRIM(cTitle))
IF hWnd <= 0
MsgInfo("No puedo capturar esa ventana")
ELSE
hCtrl := GetWindow( hWnd, GW_CHILD )
WHILE hCtrl != 0
cClassName := Upper(GetClassName(hCtrl))
IF cClassName = "EDIT"
? cClassName+" "+GetWindowText(hCtrl)
ENDIF
hCtrl = GetWindow( hCtrl, GW_HWNDNEXT )
END
ENDIF
ENDIF
RETURN NIL
y el programa cuyos gets quiero capturar:
Code:
// Test.prg
#include 'FIVEWIN.CH'
FUNCTION Main()
LOCAL oWnd, oGet1, oGet2, cGet1, cGet2
DEFINE WINDOW oWnd FROM 0,0 TO 12,35 TITLE 'Test'
cGet1 := "Hola "
cGet2 := "Bye "
@ 10,10 BUTTON "Button 01" SIZE 100,20 PIXEL OF oWnd ACTION MsgInfo("Button 01")
@ 40,10 GET oGet1 VAR cGet1 SIZE 100,20 PIXEL OF oWnd
@ 70,10 GET oGet2 VAR cGet2 SIZE 100,20 PIXEL OF oWnd
ACTIVATE WINDOW oWnd
RETURN NIL
Gracias,
Rafael