Page 1 of 1

Recuperar coordenadas de ventana MDICHILD(SOLUCIONADO)

PostPosted: Thu Dec 19, 2019 5:58 pm
by jvtecheto
Hola:

Insisto en el tema ya que todavia no lo he solucionado

Siguiendo las instrucciones de Mr. Rao sobrecargue las funciones SaveState y RestoreState

y con esta funcion grabo las coordenadas de la ventana y del XBRowse

Code: Select all  Expand view

FUNCTION SaveWinData(oWnd,oBrw,cAlias )

   LOCAL oIni

   INI oIni File cDirectApp + "\OBRAW.INI"
   oIni:Set( cAlias, "window", oWnd:SaveState() )  
   oIni:Set( cAlias, "browse", oBrw:SaveState() )
         
RETURN NIL
 


El fichero .ini grabado me sale con estos datos.

Code: Select all  Expand view

[Obr]
browse=XS1:{{"_nCreationOrders",{1,2,3,4}},{"_nRowHeight",21},{"_nWidths",{81.30,149.05,321.65,365.85}},{"_lHides",{.F.,.F.,.F.,.F.}},{"_cGrpHdrs",{,,,}},{"_cHeaders",{"CODIGO","C.I.F.","NOMBRE","DIRECCION"}}}
window=2C0000000000000001000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000000000000000930500006D020000
 


Con el browse no tengo problemas en recuperar sus datos al crear la ventana hija

Code: Select all  Expand view

ON INIT ReadWinData(oBrw,cAlias)  
 


el codigo de la funcion es el siguiente

Code: Select all  Expand view

FUNCTION ReadWinData(oBrw, cAlias )   // Falta oWnd    

   LOCAL oIni

   INI oIni File cDirectApp + "\OBRAW.INI"

   // oWnd:RestoreState( oIni:Get( cAlias, "window", "" ) )
   oBrw:RestoreState( oIni:Get( cAlias, "browse", "" ) )  
   
RETURN NIL
 


Pero cuando quito el comentario e intento restaurar los datos de la ventana pasandole el parametro de la ventana me da error.

Que hago mal? en el ON INIT de la ventana puedo pasar su mismo parametro o sea este codigo.?

¿En lugar de ON INIT que evento podria utilizar para leer los datos de la ventana?

Code: Select all  Expand view

ACTIVATE WINDOW OWndObr ON INIT ReadWinData(oWndObr,oBrw,cAlias)  
 


Muchisimas gracias.

Jose

Re: Recuperar coordenadas de ventana MDICHILD(SOLUCIONADO)

PostPosted: Sat Dec 21, 2019 10:10 am
by jvtecheto
Hola:

Esta solucionado tenia un problema en la sobrecarga de la funcion , ahora lo he modificado y funciona bien tanto en el browse como en la ventana MDICHILD.

Gracias .

Jose.