Estimados,
Creo un proyecto y un timer con lEnable en .F.
Para iniciarlo coloco un botón que hace oTimer1:Enable(), pero el TIMER no
se inicia.
#include "Xailer.ch"
CLASS TForm1 FROM TForm
COMPONENT oTimer1
COMPONENT oEdit1
COMPONENT oButton1
METHOD CreateForm()
METHOD Timer1Timer( oSender )
ENDCLASS
#include "Form1.xfm"
//---------------------------------------------------------- --------------------
METHOD Timer1Timer( oSender ) CLASS TForm1
oSender:Disable()
oSender:oParent:oEdit1:Value = seconds()
oSender:Enable()
RETURN Nil
Saludos
Jorge
In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Problemas con TIMER
-
- Mensajes: 25
- Registrado: Mar Oct 05, 2004 1:39 pm
-
- Mensajes: 25
- Registrado: Mar Oct 05, 2004 1:39 pm
Problemas con TIMER
Mis disculpas porque cuesta entender esta nueva forma de escribir los
programas
Era error mio, he correjido la función,
Antes :
METHOD Timer1Timer( oSender ) CLASS TForm1
oSender:Disable()
oSender:oParent:oEdit1:Value = seconds()
oSender:Enable()
RETURN Nil
El error era que aproveche de llamar a la misma función del TIMER para
iniciarlo, es decir, la función Timer1Timer() la llamaba desde un boton,
pero inicialmente oSender era el Timer, asi que esta función llamada desde
el botón no servía para activar el TIMER.
Ahora :
METHOD Timer1Timer( oSender ) CLASS TForm1
oSender:oParent:oTimer1:Disable()
oSender:oParent:oEdit1:Value = seconds()
oSender:oParent:oTimer1:Enable()
RETURN Nil
En todo caso es perfectamente entendible la forma de trabajar, un poco
incomodo pero lógico al fin y al cabo.
Saludos
Jorge Mason
"Jorge Mason" <jmason@chilesat.net> escribió en el mensaje
news:[email=434f318f@ozsrvnegro.ozlan.local...]434f318f@ozsrvnegro.ozlan.local...[/email]
> Estimados,
>
> Creo un proyecto y un timer con lEnable en .F.
>
> Para iniciarlo coloco un botón que hace oTimer1:Enable(), pero el TIMER no
> se inicia.
>
> #include "Xailer.ch"
>
> CLASS TForm1 FROM TForm
>
> COMPONENT oTimer1
> COMPONENT oEdit1
> COMPONENT oButton1
>
> METHOD CreateForm()
> METHOD Timer1Timer( oSender )
>
> ENDCLASS
>
> #include "Form1.xfm"
>
> //---------------------------------------------------------- --------------------
>
> METHOD Timer1Timer( oSender ) CLASS TForm1
> oSender:Disable()
> oSender:oParent:oEdit1:Value = seconds()
> oSender:Enable()
> RETURN Nil
>
> Saludos
> Jorge
>
programas
Era error mio, he correjido la función,
Antes :
METHOD Timer1Timer( oSender ) CLASS TForm1
oSender:Disable()
oSender:oParent:oEdit1:Value = seconds()
oSender:Enable()
RETURN Nil
El error era que aproveche de llamar a la misma función del TIMER para
iniciarlo, es decir, la función Timer1Timer() la llamaba desde un boton,
pero inicialmente oSender era el Timer, asi que esta función llamada desde
el botón no servía para activar el TIMER.
Ahora :
METHOD Timer1Timer( oSender ) CLASS TForm1
oSender:oParent:oTimer1:Disable()
oSender:oParent:oEdit1:Value = seconds()
oSender:oParent:oTimer1:Enable()
RETURN Nil
En todo caso es perfectamente entendible la forma de trabajar, un poco
incomodo pero lógico al fin y al cabo.
Saludos
Jorge Mason
"Jorge Mason" <jmason@chilesat.net> escribió en el mensaje
news:[email=434f318f@ozsrvnegro.ozlan.local...]434f318f@ozsrvnegro.ozlan.local...[/email]
> Estimados,
>
> Creo un proyecto y un timer con lEnable en .F.
>
> Para iniciarlo coloco un botón que hace oTimer1:Enable(), pero el TIMER no
> se inicia.
>
> #include "Xailer.ch"
>
> CLASS TForm1 FROM TForm
>
> COMPONENT oTimer1
> COMPONENT oEdit1
> COMPONENT oButton1
>
> METHOD CreateForm()
> METHOD Timer1Timer( oSender )
>
> ENDCLASS
>
> #include "Form1.xfm"
>
> //---------------------------------------------------------- --------------------
>
> METHOD Timer1Timer( oSender ) CLASS TForm1
> oSender:Disable()
> oSender:oParent:oEdit1:Value = seconds()
> oSender:Enable()
> RETURN Nil
>
> Saludos
> Jorge
>
Problemas con TIMER
Jorge,
> Ahora :
> METHOD Timer1Timer( oSender ) CLASS TForm1
> oSender:oParent:oTimer1:Disable()
> oSender:oParent:oEdit1:Value = seconds()
> oSender:oParent:oTimer1:Enable()
> RETURN Nil
>
> En todo caso es perfectamente entendible la forma de trabajar, un poco
> incomodo pero lógico al fin y al cabo.
Tal y como lo has escrito sí es un poco incómodo. Pero si lo escribes así:
METHOD Timer1Timer( oSender ) CLASS TForm1
::oTimer1:Disable()
::oEdit1:Value = seconds()
::oTimer1:Enable()
RETURN Nil
ya no lo es tanto
Debes tener en cuenta que todos los componentes y controles que pongas en un
formulario están declarados como DATAs dentro del mismo, y por lo tanto son
accesibles desde cualquier método del formulario, incluidos los métodos
correspondientes a los eventos, usando simplemente el operador Self (::)
--
Un saludo,
José F. Giménez
> Ahora :
> METHOD Timer1Timer( oSender ) CLASS TForm1
> oSender:oParent:oTimer1:Disable()
> oSender:oParent:oEdit1:Value = seconds()
> oSender:oParent:oTimer1:Enable()
> RETURN Nil
>
> En todo caso es perfectamente entendible la forma de trabajar, un poco
> incomodo pero lógico al fin y al cabo.
Tal y como lo has escrito sí es un poco incómodo. Pero si lo escribes así:
METHOD Timer1Timer( oSender ) CLASS TForm1
::oTimer1:Disable()
::oEdit1:Value = seconds()
::oTimer1:Enable()
RETURN Nil
ya no lo es tanto

Debes tener en cuenta que todos los componentes y controles que pongas en un
formulario están declarados como DATAs dentro del mismo, y por lo tanto son
accesibles desde cualquier método del formulario, incluidos los métodos
correspondientes a los eventos, usando simplemente el operador Self (::)
--
Un saludo,
José F. Giménez
-
- Mensajes: 25
- Registrado: Mar Oct 05, 2004 1:39 pm
Problemas con TIMER
Eso está muy bien
Gracias
Jorge
"Jose F. Gimenez" <jfgimenez@wanadoo.es> escribió en el mensaje
news:434f5d1e$[email=1@ozsrvnegro.ozlan.local...]1@ozsrvnegro.ozlan.local...[/email]
> Jorge,
>
>> Ahora :
>> METHOD Timer1Timer( oSender ) CLASS TForm1
>> oSender:oParent:oTimer1:Disable()
>> oSender:oParent:oEdit1:Value = seconds()
>> oSender:oParent:oTimer1:Enable()
>> RETURN Nil
>>
>> En todo caso es perfectamente entendible la forma de trabajar, un poco
>> incomodo pero lógico al fin y al cabo.
>
> Tal y como lo has escrito sí es un poco incómodo. Pero si lo escribes así:
>
> METHOD Timer1Timer( oSender ) CLASS TForm1
> ::oTimer1:Disable()
> ::oEdit1:Value = seconds()
> ::oTimer1:Enable()
> RETURN Nil
>
> ya no lo es tanto
>
> Debes tener en cuenta que todos los componentes y controles que pongas en
> un formulario están declarados como DATAs dentro del mismo, y por lo tanto
> son accesibles desde cualquier método del formulario, incluidos los
> métodos correspondientes a los eventos, usando simplemente el operador
> Self (::)
>
>
> --
> Un saludo,
>
> José F. Giménez
>
Gracias
Jorge
"Jose F. Gimenez" <jfgimenez@wanadoo.es> escribió en el mensaje
news:434f5d1e$[email=1@ozsrvnegro.ozlan.local...]1@ozsrvnegro.ozlan.local...[/email]
> Jorge,
>
>> Ahora :
>> METHOD Timer1Timer( oSender ) CLASS TForm1
>> oSender:oParent:oTimer1:Disable()
>> oSender:oParent:oEdit1:Value = seconds()
>> oSender:oParent:oTimer1:Enable()
>> RETURN Nil
>>
>> En todo caso es perfectamente entendible la forma de trabajar, un poco
>> incomodo pero lógico al fin y al cabo.
>
> Tal y como lo has escrito sí es un poco incómodo. Pero si lo escribes así:
>
> METHOD Timer1Timer( oSender ) CLASS TForm1
> ::oTimer1:Disable()
> ::oEdit1:Value = seconds()
> ::oTimer1:Enable()
> RETURN Nil
>
> ya no lo es tanto

>
> Debes tener en cuenta que todos los componentes y controles que pongas en
> un formulario están declarados como DATAs dentro del mismo, y por lo tanto
> son accesibles desde cualquier método del formulario, incluidos los
> métodos correspondientes a los eventos, usando simplemente el operador
> Self (::)
>
>
> --
> Un saludo,
>
> José F. Giménez
>