Bonjour,
Je d�veloppe une petite appli de chat en ruby en utilisant Glade et GTK pour l'interface.
Avec un tutorial, j'ai r�ussi � faire fonctionner quelque chose de mon application. J'envoie un message � un serveur (utilisation de DRB/rinda etc...). Un �l�ment de mon programme doit toutes les 1 secondes lire un tuplespace sur le serveur. Pour l'instant, j'ai fait un bouton qui appelle une fonction qui lit ce tuplespace. Moi j'aimerais que l'appel � cette fonction se fasse tout seul.
J'ai bien cr�e une boucle du genre :
While 1
check()
end
mais �a ne fonctionne pas. Voici le code de mon programme :
peux-t-on dans Glade sp�cifier un signal qui permettrait � l'appli d'appeler check() automatiquement toutes les x secondes (sleep(1))? Ou dois-je mettre une boucle quelque part?
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 class MonAppli def initialize(file, root,ts) @main_glade_xml = GladeXML.new(file, root) {|handler| method(handler)} @ts=ts end def on_send_clicked mess = @main_glade_xml["message"].text #@main_glade_xml["Chatwindow"].text = mess @ts.write [:message, mess] sleep(0.5) messlu = @ts.read([:message, nil])[1] @main_glade_xml["Chatwindow"].text = messlu end def on_reload_ok_pressed check() end def check messlu = @ts.take([:message, nil])[1] @main_glade_xml["Chatwindow"].text = messlu end end DRb.start_service tuple_space = Rinda::RingFinger.primary Gtk.init MonAppli.new("rubyIM.glade",nil,tuple_space) Gtk.main DRb.thread.join
PS: Je suis un tr�s tr�s grand d�butant en Ruby et je n'y connais presque rien sur GTK (tout fait avec des tutos).
Merci d'avance...![]()
Partager