Problemas con ON PAINT y GAUGE

Post Reply
User avatar
Mayor_Valenzuela
Posts: 62
Joined: Tue Jul 08, 2008 4:27 pm
Location: Santiago, Chile

Problemas con ON PAINT y GAUGE

Post by Mayor_Valenzuela »

Desde hace tiempo tengo un problema con la clausula ON PAINT, cuando necesito que un proceso sea mostrado con una barra de progreso la cual no debe ser ejecutada por el usuario si no al ejecutar la acción se genere automaticamente. Esto sale bien siempre y cuando no se mueva ninguna ventana ya que cuando pierde el foco y lo recupera el proceso se realiza nuevamente... y en ciertas ocaciones me proboca una caida del sistema... Existe alguna forma de no usar ON PAINT???... No se si me entienden???... ojala puedan ayudarme... :D
Mario Valenzuela M.
Santiago, Chile.
User avatar
jose_murugosa
Posts: 943
Joined: Mon Feb 06, 2006 4:28 pm
Location: Uruguay
Contact:

Re: Problemas con ON PAINT y GAUGE

Post by jose_murugosa »

El evento ON PAINT dispara los _ vez que se pinta el objeto, e decir al moverlo, minimizarlo, maximisarlo, darle foco, etc.

Si el evento debe ejecutarse al abrirse la ventana lo ideal es usar ON INIT.

Espero que esto te sirva :)
Saludos/Regards,
José Murugosa
FWH + Harbour + Bcc7. Una seda!
User avatar
Mayor_Valenzuela
Posts: 62
Joined: Tue Jul 08, 2008 4:27 pm
Location: Santiago, Chile

Re: Problemas con ON PAINT y GAUGE

Post by Mayor_Valenzuela »

Gracias por la ayuda, pero ya recorde como lo hice en una ocacion... gracias de todas maneras y a continuacion la solucion de mi problema para las estadisticas por si alguien pasa por lo mismo... :D
  • Antes...

    DEFINE DIALOG oDlg RESOURCE "DIALOG_INGMOD_PROCESO" FONT oFont TITLE "Recuperando Información de Precios por Local"

    REDEFINE GAUGE oBar VAR nVar ID 101 OF oDlg COLOR CLR_WHITE, CLR_BLACK BARCOLOR CLR_WXP, CLR_BLACK ALTERNATE
    REDEFINE SAY oTxt ID 102 OF oDlg COLOR CLR_HRED UPDATE

    ACTIVATE DIALOG oDlg CENTERED ON PAINT ( Proceso( oBar, oTxt ), oDlg:End() )

    Despues...

    DEFINE DIALOG oDlg RESOURCE "DIALOG_INGMOD_PROCESO" FONT oFont TITLE "Recuperando Información de Precios por Local"

    REDEFINE GAUGE oBar VAR nVar ID 101 OF oDlg COLOR CLR_WHITE, CLR_BLACK BARCOLOR CLR_WXP, CLR_BLACK ALTERNATE
    REDEFINE SAY oTxt ID 102 OF oDlg COLOR CLR_HRED UPDATE

    ACTIVATE DIALOG oDlg CENTERED NOWAIT

    While !Eof()
    .
    .
    .
    End While

    Return (Nil)
Mario Valenzuela M.
Santiago, Chile.
User avatar
Willi Quintana
Posts: 859
Joined: Sun Oct 09, 2005 10:41 pm
Location: Cusco - Perú
Contact:

Re: Problemas con ON PAINT y GAUGE

Post by Willi Quintana »

Hola, hazlo asi:
...
..
.

Code: Select all

lFlag := .t.
DEFINE DIALOG oDlg ......
<<<acciones>>>
ACTIVATE DIALOG oDlg ON PAINT (If(lFlag, (lFlag := .f., HazAlgoAqui()), Nil)
 
Post Reply