FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour otimer:end
Posts: 711
Joined: Thu Oct 06, 2005 09:57 PM
otimer:end
Posted: Sat Jun 22, 2013 11:05 AM

Hola amigos,
Tengo en una aplicaci贸n un TIMER que se activa al iniciarse la pantalla principal. Cuando se pulsa alguna opci贸n inhabilita el timer temporalmente con oTimer:Deactivate() y al volver de dicha funci贸n vuelve a activar el timer con oTimer:activate().

Mi duda es la siguiente. Al finalizar el programa 驴 es necesario usar oTimer:End() o todos los objetos mueren al finalizar la aplicaci贸n?

Un saludo



Manuel
Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM
Re: otimer:end
Posted: Sat Jun 22, 2013 12:32 PM

Manuel,

Si solo usas ese timer, no habria problema en que no llames a End(). FWH y Harbour limpiaran todo :-)

Pero si es una aplicaci贸n en donde usas varios timers, etc. entonces si debes llamar a End() puesto que elimina ese timer de un array interno que mantiene la clase TTimer. Al no liberarlo, ese objeto no se destruye y se queda retenido en el array, consumiendo memoria.

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 711
Joined: Thu Oct 06, 2005 09:57 PM
Re: otimer:end
Posted: Sat Jun 22, 2013 03:13 PM

Muchas gracias Maestro.

Un saludo



Manuel
Posts: 1818
Joined: Wed Oct 26, 2005 02:49 PM
Re: otimer:end
Posted: Wed Jul 03, 2013 12:04 AM
Buenas noches a todo el foro.. Hace rato no entraba a consultarlo.

Pero me surgio una pregunta con respecto a la FINALIZACION de un TIMER.

lo tengo definido de la siguiente manera:

Code (fw): Select all Collapse
****************************************
*DEFINE UN TIMER PARA EVITAR INACTIVIDAD
****************************************
FUNCTION pTimCA01(oTimer)

if oTimer == nil
聽 DEFINE TIMER oTimer INTERVAL 15000 OF oCuadro ACTION pActCA01()
聽 ACTIVATE TIMER oTimer
else
聽 Alert( "There is already a working timer..." )
endif

Return oTimer


FINALIZO el timer de la siguiente manera en el VALID del dialogo

Code (fw): Select all Collapse
VALID(oTimer:end(),.t.)


Pero me sale el siguiente error:

Code (fw): Select all Collapse
Descripci贸n de la Applicaci贸n:
___________________________________________________

Ubicaci贸n y Nombre: C:\DlymAdo.1\Contable.Exe (32 BITS)
Desde la Estaci贸n de Trabajo: LEANDRO
Usuario en Sesi贸n: 001
Privilegio del Usuario: 001
Tama帽o: 1,341,952 bytes
Hora de Inicio: 聽 Martes 聽2 de Julio del 2013, 聽6:38:43 PM
Hora del Error: 聽 Martes 聽2 de Julio del 2013, 聽6:38:43 PM
Tiempo de Sesi贸n: 0 hours 0 mins 41 secs


Descripci贸n del Error:
___________________________________________________

Error BASE/1004
Class: 'NIL' has no exported method: END
聽 聽Args:
聽 聽 聽[ 聽 1] = U


Llamadas al Stack:
___________________________________________________


Alguien sabe la raz贸n del error, de antemano gracias
Saludos
LEANDRO AREVALO
Bogot谩 (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Turbo Incremental Link64 6.98 Embarcadero 7.70 ] [ FiveWin 25.01 ] [ xHarbour 64 bits) ]
Posts: 1515
Joined: Thu Oct 30, 2008 02:37 PM
Re: otimer:end
Posted: Wed Jul 03, 2013 07:22 AM

Leandro,

Sin ver la llamada a la funcion ptimca01()... parece que est谩s asumiendo que en ptimcam01(oTimer) el oTimer se creara en la funcion llamada y se asignara por REFERENCIA. Y esto no es asi.

Deberia ser oTimer:= ptimca01()

Saludos

Posts: 1818
Joined: Wed Oct 26, 2005 02:49 PM
Re: otimer:end
Posted: Fri Jul 12, 2013 02:53 AM

paquito muchas gracias.... era la soluci贸n al problema.

Saludos
LEANDRO AREVALO
Bogot谩 (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Turbo Incremental Link64 6.98 Embarcadero 7.70 ] [ FiveWin 25.01 ] [ xHarbour 64 bits) ]

Continue the discussion