otimer:end

otimer:end

Postby Manuel Valdenebro » 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
User avatar
Manuel Valdenebro
 
Posts: 706
Joined: Thu Oct 06, 2005 9:57 pm
Location: Málaga-España

Re: otimer:end

Postby Antonio Linares » 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
User avatar
Antonio Linares
Site Admin
 
Posts: 42122
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: otimer:end

Postby Manuel Valdenebro » Sat Jun 22, 2013 3:13 pm

Muchas gracias Maestro.
Un saludo

Manuel
User avatar
Manuel Valdenebro
 
Posts: 706
Joined: Thu Oct 06, 2005 9:57 pm
Location: Málaga-España

Re: otimer:end

Postby leandro » 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: Select all  Expand view  RUN

****************************************
*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: Select all  Expand view  RUN

VALID(oTimer:end(),.t.)
 


Pero me sale el siguiente error:

Code: Select all  Expand view  RUN

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

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1676
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: otimer:end

Postby hmpaquito » Wed Jul 03, 2013 7: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
hmpaquito
 
Posts: 1482
Joined: Thu Oct 30, 2008 2:37 pm

Re: otimer:end

Postby leandro » Fri Jul 12, 2013 2: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

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1676
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 64 guests