[Ruby] Ecrire tout simplement dans un Textview
Bonjour,
Je n'arrive pas à écrire dans un textview. J'ai crée mon interface avec Glade 2 et code un chat en ruby.
J'ai suivi les exemple du site ruby-gnome2 mais je n'y arrive pas du tout.
Voici mon code :
Code:
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
| class MonAppli
def initialize(file, root,ts)
@main_glade_xml = GladeXML.new(file, root) {|handler| method(handler)}
@ts=ts
@textview= @main_glade_xml["dialogbox"]
@buffer=@textview.buffer
#@timer = Gtk::timeout_add(100) do check end
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]
#check(messlu)
buffer.set_text(messlu)
#@main_glade_xml["Chatwindow"].text = messlu
end
def on_pseudo_ok_pressed
check()
end
def check()
#messlu = @ts.take([:message,nil])[1]
#@main_glade_xml["Chatwindow"].text = messlu
end
end |
Bon c'est succins mais je veux juste envoyer du texte dans le composant Textview. J'ai un message d'erreur sur la console :
main.rb:30:in `on_send_clicked': undefined local variable or method `buffer' for #<MonAppli:0xb6a70c54>
from /usr/lib/ruby/1.8/libglade2.rb:44:in `call'
from /usr/lib/ruby/1.8/libglade2.rb:44:in `connect'
from main.rb:57:in `call'
from main.rb:57:in `main'
from main.rb:57
Je suis assez perdu même avec les exemples. Une idée? Ou existe-t-il un composant plus simple à utiliser pour afficher du texte (pas le composant text-edit).
Merci d'avance :)