[pygtk] realtime update of TreeView
Martin B.
spooky.ln at tbs-software.com
Fri May 8 23:24:01 WST 2009
hi, i write some simple app where i need realtime update gtk.TreeView.
but window shows and long time nothing happened and after whole
liststore is filled treeview shown :(
need i use threads for this ?
theres a little example.
thanks a lot for your help
import gtk, sys, gobject
class myapp(gtk.Window):
def __init__(self):
super(myapp, self).__init__()
self.set_size_request(300, 400)
self.connect('destroy', gtk.main_quit)
render = gtk.CellRendererText()
self.lst = gtk.ListStore(gobject.TYPE_INT, gobject.TYPE_STRING)
#self.lst.connect('row-inserted', self.row_inserted)
view = gtk.TreeView(self.lst)
view.insert_column_with_attributes( -1, "No.", render, markup=0)
view.insert_column_with_attributes( -1, "Name", render, text=1)
scroll = gtk.ScrolledWindow()
scroll.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
scroll.add_with_viewport(view)
self.add(scroll)
self.show_all()
self.fill_list()
def fill_list(self):
""" fill up liststore """
# do some more complex not this
for data in xrange(1, 20000):
self.lst.append([data, "Name: %d" % data])
def row_inserted(self, widget, value, treeiter):
""" if row is inserted into lst """
#gobject.idle_add(self.scroll_row)
pass
def scroll_row(self):
pass
APP = myapp()
gtk.main()
More information about the pygtk
mailing list