Barra de progreso oMeter - Inde ON con FiveLinux

Barra de progreso oMeter - Inde ON con FiveLinux

Postby jgayoso » Thu Apr 07, 2011 6:22 pm

Al realizar la instrucción siguiente, el archivo no se indexa pasa de largo y la barra de progreso no avanza:
Index On &cKey Tag &cTag To &filex EVAL (oMeter:Set( recno() ) )

igual que con esta instrucción:
Index On &cKey Tag &cTag To &filex EVAL (oMeter:Set( recno() ) , SysRefresh() )

Al realizar la instrucción siguiente, el archivo se indexa, pero no tengo barra de progreso:
Index On &cKey Tag &cTag To &filex

Al realizar la instrucción siguiente, el archivo se indexa, tengo barra de progreso pero debo estar presionando una tecla por cada registro:
Index On &cKey Tag &cTag To &filex EVAL (oMeter:Set( recno() ), alert('Paso') )

Favor si alguien sabe como arreglar mi problema se agradeceria.

Jorge Gayoso
jgayoso
 
Posts: 170
Joined: Sat Aug 07, 2010 11:36 pm
Location: Chile

Re: Barra de progreso oMeter - Inde ON con FiveLinux

Postby Antonio Linares » Fri Apr 08, 2011 12:48 am

Jorge,

Hay que hacer el siguiente cambio en la Clase TDialog:
Code: Select all  Expand view

METHOD Activate( lCentered, bValid, bLClicked, bRClicked, lModal ) CLASS TDialog
   ...
   
   ::AEvalWhen()
   ::Show()

   if ! Empty( ::bStart )
      Eval( ::bStart, Self )
   endif  

   // Listbox controls initialization workaround
   ...
 

Y añadir esta nueva DATA en la Clase TWindow:
Code: Select all  Expand view

   DATA      bStart
 

Con esos cambios este ejemplo funciona bien:
Code: Select all  Expand view

#include "FiveLinux.ch"

function Main()

   local oDlg, oMeter, nVal := 0

   DEFINE DIALOG oDlg SIZE 600, 400 TITLE "Testing a Meter"
   
   oDlg:bStart := { || Index( oMeter ) }

   @ 18, 8 METER oMeter VAR nVal TOTAL 100 OF oDlg SIZE 440, 25
   
   @ 28, 24 BUTTON "Ok" OF oDlg ACTION oDlg:End()

   ACTIVATE DIALOG oDlg CENTERED

return nil

function Index( oMeter )

   for n = 1 to 100
      oMeter:Set( n )
      SysRefresh()
   next
   
return nil  
 

Image
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41206
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Barra de progreso oMeter - Inde ON con FiveLinux

Postby jgayoso » Fri Apr 08, 2011 7:48 pm

Ok, antonio me quedo claro.

La unica duda es:

Estos archivos estan en /source/classes los modifique en ese directorio, consulta: ¿debo solo compilar mi proyecto y el proceso los toma inmediatamente? o ¿debo incorporar estos archivos a mi proyecto para que tome los cambios como cualquier PRG? o ¿debo compilarlos en forma especial y el resultado dejarlo otro directorio (cual)?

Se agradece vuestra respuesta..

Jorge Gayoso


Antonio Linares wrote:Jorge,

Hay que hacer el siguiente cambio en la Clase TDialog:
Code: Select all  Expand view

METHOD Activate( lCentered, bValid, bLClicked, bRClicked, lModal ) CLASS TDialog
   ...
   
   ::AEvalWhen()
   ::Show()

   if ! Empty( ::bStart )
      Eval( ::bStart, Self )
   endif  

   // Listbox controls initialization workaround
   ...
 

Y añadir esta nueva DATA en la Clase TWindow:
Code: Select all  Expand view

   DATA      bStart
 

Con esos cambios este ejemplo funciona bien:
Code: Select all  Expand view

#include "FiveLinux.ch"

function Main()

   local oDlg, oMeter, nVal := 0

   DEFINE DIALOG oDlg SIZE 600, 400 TITLE "Testing a Meter"
   
   oDlg:bStart := { || Index( oMeter ) }

   @ 18, 8 METER oMeter VAR nVal TOTAL 100 OF oDlg SIZE 440, 25
   
   @ 28, 24 BUTTON "Ok" OF oDlg ACTION oDlg:End()

   ACTIVATE DIALOG oDlg CENTERED

return nil

function Index( oMeter )

   for n = 1 to 100
      oMeter:Set( n )
      SysRefresh()
   next
   
return nil  
 

Image
jgayoso
 
Posts: 170
Joined: Sat Aug 07, 2010 11:36 pm
Location: Chile

Re: Barra de progreso oMeter - Inde ON con FiveLinux

Postby Antonio Linares » Sat Apr 09, 2011 10:54 pm

Jorge,

Puedes añadirlos a tu proyecto una vez modificados. Otra opción es:

Estas usando Harbour ? Podemos enviarte las librerias actualizadas :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41206
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Barra de progreso oMeter - Inde ON con FiveLinux

Postby jgayoso » Mon Apr 11, 2011 12:50 pm

Antonio, estoy utilizando xharbour. Si me puedes enviar las librerias actualizadas mejor, ya que pueden haber otras mejoras que me pueden ayudar.

Lo indicado funciono colocando un SysRefresh() y un .T. al final EVAL, el nEvery saca un porcentaje de 5% al total de registro, para ir indicando el avance:

Index On &cKey Tag &cTag To &filex EVAL (oMeter:Set( recno() ), SysRefresh(), .T.) Every nEvery


Muchas gracias Antonio, te debo otra mas...

Jorge Gayoso


Antonio Linares wrote:Jorge,

Puedes añadirlos a tu proyecto una vez modificados. Otra opción es:

Estas usando Harbour ? Podemos enviarte las librerias actualizadas :-)
jgayoso
 
Posts: 170
Joined: Sat Aug 07, 2010 11:36 pm
Location: Chile


Return to FiveLinux / FiveDroid (Android)

Who is online

Users browsing this forum: No registered users and 3 guests