Discussion:
Timer en Mono / Gtk# / C#
Ricardo Cohen (MIAsoft)
2006-05-18 16:07:48 UTC
Permalink
Hola a todos...

Alguien tiene un ejemplo claro de como utilizar un Timer en Mono / Gtk# / C# ???

He probado con System.Timer y he logrado crear un objeto timer y asignarle sus propiedades pero no logro indicarle cual es la funcion que debe ejecutar al cumplirse el intervalo especificado.

System.Timers.Timer miTempo = new System.Timers.Timer();

miTempo.Interval=1000;

miTempo.Start();

Graciasssssssss.
NeCuDeCo
2006-05-18 16:23:54 UTC
Permalink
Te equivocaste, no es System.Timers.Timer
es System.Threads.Timer

;)
Post by Ricardo Cohen (MIAsoft)
Hola a todos...
Alguien tiene un ejemplo claro de como utilizar un Timer en Mono / Gtk# / C# ???
He probado con System.Timer y he logrado crear un objeto timer y asignarle
sus propiedades pero no logro indicarle cual es la funcion que debe ejecutar
al cumplirse el intervalo especificado.
System.Timers.Timer miTempo = *new *System.Timers.*Timer*();
miTempo.Interval=1000;
miTempo.*Start*();
Graciasssssssss.
_______________________________________________
Mono-hispano mailing list
https://listas.es.gnome.org/mailman////listinfo/mono-hispano
--
--------------------------
NeCuDeCo
http://necudeco.blogsome.com
Your Jugdment Day is NOW
Manuel Alejandro Cerón Estrada
2006-05-18 16:30:55 UTC
Permalink
Hola Ricardo,

Otra forma muy sencilla es usar GLib. La forma sería:

....
GLib.Timeout.Add (1000, Callback);
....
public static bool TimeoutCb ()
{
Console.WriteLine ("Pasó un segundo...");
return true;
}
....

Un saludo,

Manuel.
Post by NeCuDeCo
Te equivocaste, no es System.Timers.Timer
es System.Threads.Timer
;)
Post by Ricardo Cohen (MIAsoft)
Hola a todos...
Alguien tiene un ejemplo claro de como utilizar un Timer en Mono / Gtk# /
C# ???
Post by Ricardo Cohen (MIAsoft)
He probado con System.Timer y he logrado crear un objeto timer y asignarle
sus propiedades pero no logro indicarle cual es la funcion que debe ejecutar
al cumplirse el intervalo especificado.
Post by Ricardo Cohen (MIAsoft)
System.Timers.Timer miTempo = new System.Timers .Timer();
miTempo.Interval=1000;
miTempo.Start();
Graciasssssssss.
_______________________________________________
Mono-hispano mailing list
https://listas.es.gnome.org/mailman////listinfo/mono-hispano
--
--------------------------
NeCuDeCo
http://necudeco.blogsome.com
Your Jugdment Day is NOW
_______________________________________________
Mono-hispano mailing list
https://listas.es.gnome.org/mailman////listinfo/mono-hispano
--
· Manuel Alejandro Cerón Estrada
· ***@gmail.com
· http://ceronman.blogspot.com
Manuel Alejandro Cerón Estrada
2006-05-18 16:32:03 UTC
Permalink
Por copiar a la carrera, me equivoqué, la función no se debe llamar
TimeoutCb sino Callback,

Manuel.
Post by Manuel Alejandro Cerón Estrada
Hola Ricardo,
....
GLib.Timeout.Add (1000, Callback);
....
public static bool TimeoutCb ()
{
Console.WriteLine ("Pasó un segundo...");
return true;
}
....
Un saludo,
Manuel.
Post by NeCuDeCo
Te equivocaste, no es System.Timers.Timer
es System.Threads.Timer
;)
Post by Ricardo Cohen (MIAsoft)
Hola a todos...
Alguien tiene un ejemplo claro de como utilizar un Timer en Mono / Gtk# /
C# ???
Post by Ricardo Cohen (MIAsoft)
He probado con System.Timer y he logrado crear un objeto timer y asignarle
sus propiedades pero no logro indicarle cual es la funcion que debe ejecutar
al cumplirse el intervalo especificado.
Post by Ricardo Cohen (MIAsoft)
System.Timers.Timer miTempo = new System.Timers .Timer();
miTempo.Interval=1000;
miTempo.Start();
Graciasssssssss.
_______________________________________________
Mono-hispano mailing list
https://listas.es.gnome.org/mailman////listinfo/mono-hispano
--
--------------------------
NeCuDeCo
http://necudeco.blogsome.com
Your Jugdment Day is NOW
_______________________________________________
Mono-hispano mailing list
https://listas.es.gnome.org/mailman////listinfo/mono-hispano
--
· Manuel Alejandro Cerón Estrada
· http://ceronman.blogspot.com
--
· Manuel Alejandro Cerón Estrada
· ***@gmail.com
· http://ceronman.blogspot.com
Andrés G. Aragoneses [ knocte ]
2006-05-19 06:56:03 UTC
Permalink
Post by Manuel Alejandro Cerón Estrada
Hola Ricardo,
(...)
Pero esto sólo funcionaría en Mono, no en .NET, ¿verdad? :-/

Saludos,

Andrés [ knocte ]

--
Manuel Alejandro Cerón Estrada
2006-05-19 15:43:34 UTC
Permalink
Hola Ricardo,

Funcionará en .NET sólo si agregas las librerías de Gtk#.

Manuel.
Post by Andrés G. Aragoneses [ knocte ]
Post by Manuel Alejandro Cerón Estrada
Hola Ricardo,
(...)
Pero esto sólo funcionaría en Mono, no en .NET, ¿verdad? :-/
Saludos,
Andrés [ knocte ]
--
_______________________________________________
Mono-hispano mailing list
https://listas.es.gnome.org/mailman////listinfo/mono-hispano
--
· Manuel Alejandro Cerón Estrada
· ***@gmail.com
· http://ceronman.blogspot.com
Andrés G. Aragoneses [ knocte ]
2006-05-20 17:57:05 UTC
Permalink
Post by Manuel Alejandro Cerón Estrada
Funcionará en .NET sólo si agregas las librerías de Gtk#.
No parece demasiado lógico entonces agregar una dependencia a unas
librerías gráficas para usar solamente un timer...

Saludos,

Andrés [ knocte ]

--
NeCuDeCo
2006-05-20 19:09:33 UTC
Permalink
Andres, y quein dice q si lo haces en NET no puedes hacer la parte grafica
con GTK..
Post by Andrés G. Aragoneses [ knocte ]
Post by Manuel Alejandro Cerón Estrada
Funcionará en .NET sólo si agregas las librerías de Gtk#.
No parece demasiado lógico entonces agregar una dependencia a unas
librerías gráficas para usar solamente un timer...
Saludos,
Andrés [ knocte ]
--
_______________________________________________
Mono-hispano mailing list
https://listas.es.gnome.org/mailman////listinfo/mono-hispano
--
--------------------------
NeCuDeCo
http://necudeco.blogsome.com
Your Jugdment Day is NOW
Manuel Alejandro Cerón Estrada
2006-05-20 20:10:04 UTC
Permalink
Hola Andrés,
Post by Andrés G. Aragoneses [ knocte ]
No parece demasiado lógico entonces agregar una dependencia a unas
librerías gráficas para usar solamente un timer...
Tienes razón, pero el título del mensaje dice "Timer en Mono / Gtk# /
C#" Así que supongo que Ricardo está usando Gtk# en su aplicación, así
que de todos modos le va a tocar agregar la dependencia.

Manuel.
--
· Manuel Alejandro Cerón Estrada
· ***@gmail.com
· http://ceronman.blogspot.com
Andrés G. Aragoneses [ knocte ]
2006-05-20 20:21:31 UTC
Permalink
Post by Manuel Alejandro Cerón Estrada
Hola Andrés,
Post by Andrés G. Aragoneses [ knocte ]
No parece demasiado lógico entonces agregar una dependencia a unas
librerías gráficas para usar solamente un timer...
Tienes razón, pero el título del mensaje dice "Timer en Mono / Gtk# /
C#" Así que supongo que Ricardo está usando Gtk# en su aplicación, así
que de todos modos le va a tocar agregar la dependencia.
Pues me vais a perdonar pero creo que voy a insistir :)

Y me explico: pensando más en el futuro, imagináos que se refactoriza la
aplicación para usar otra librería gráfica (wx.NET por ejemplo) o bien
una utilidad de acceso a las mismas funcionalidades por línea de
comandos. Pues eso provocaría que para esa pequeña aplicación
resultante, se necesitarían enlazar las librerías gráficas de GTK#, que
casualmente podrían suponer más grandes en tamaño que el propio programa.

Saludos,

Andrés [ knocte ]

PD: Vamos, que yo seguiría usando el Timer de .NET.

--
Alberto León
2006-05-20 20:27:39 UTC
Permalink
Ahí tiene razón. El uso de gtk resulta algo infructuoso en los
sistemas y distribuciones que no lo llevan incorporado porque requiere
que quien vaya a instalarse nuestro programa se descargue el
instalador de gtk que no pesa pocos megas...
Ricardo Medina
2006-05-20 21:05:41 UTC
Permalink
Mira, de cualquier forma puedes crear una clase que lanze un hilo y
dispare eventos cuando se cumple el tiempo que le hayas definido (con
Thread.Sleep) ..aunque no entiendo porque no te funciona el
System.Threading.Timer

Saludos


On Sat, 2006-05-20 at 22:21 +0200, "Andrés G. Aragoneses [ knocte ]"
Post by Andrés G. Aragoneses [ knocte ]
Hola Andrés,
No parece demasiado lógico entonces agregar una dependencia a unas
librerías gráficas para usar solamente un timer...
Tienes razón, pero el título del mensaje dice "Timer en Mono / Gtk# /
C#" Así que supongo que Ricardo está usando Gtk# en su aplicación, así
que de todos modos le va a tocar agregar la dependencia.
Pues me vais a perdonar pero creo que voy a insistir :)
Y me explico: pensando más en el futuro, imagináos que se refactoriza la
aplicación para usar otra librería gráfica (wx.NET por ejemplo) o bien
una utilidad de acceso a las mismas funcionalidades por línea de
comandos. Pues eso provocaría que para esa pequeña aplicación
resultante, se necesitarían enlazar las librerías gráficas de GTK#, que
casualmente podrían suponer más grandes en tamaño que el propio programa.
Saludos,
Andrés [ knocte ]
PD: Vamos, que yo seguiría usando el Timer de .NET.
--
Ricardo Medina <***@gmail.com>
Mario Carrión
2006-05-18 16:32:11 UTC
Permalink
Post by NeCuDeCo
Te equivocaste, no es System.Timers.Timer
es System.Threads.Timer
;)
Por cierto, lo que escribí antes es para System.Windows.Forms.Timer,
que ciertamente no tiene que ver en tu pregunta :/.

Y tampoco es System.Threads.Timer es System.Threading.Timer, el
ejemplo[1], aunque mirando que dices Gtk# seguro es porque quieres
actualizar tu UI desde un timer, si es así mira el sitio de Mono[2].

Saludos
--
Mario Carrión

[1] http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemthreadingtimerclasstopic.asp
[2] http://www.mono-project.com/Responsive_Applications
Mario Carrión
2006-05-18 16:26:52 UTC
Permalink
Post by Ricardo Cohen (MIAsoft)
Hola a todos...
Hola
Post by Ricardo Cohen (MIAsoft)
Alguien tiene un ejemplo claro de como utilizar un Timer en Mono / Gtk# / C# ???
He probado con System.Timer y he logrado crear un objeto timer y asignarle
sus propiedades pero no logro indicarle cual es la funcion que debe ejecutar
al cumplirse el intervalo especificado.
System.Timers.Timer miTempo = new System.Timers.Timer();
miTempo.Interval=1000;
miTempo.Start();
El timer cada Interval genera un evento (Tick), conectate a ese evento
y ahí indicale lo que debe hacer.

Saludos
--
Mario Carrión
Loading...