我有一個treeview liststore試圖獲得實時更新的問題,並且我創建了一個示例來模擬我想要做的事情。 我希望liststore1更新每個循環。python - gtk treeview - 實時更新列表庫
http://img204.imageshack.us/i/capturadetela5.png/
應該更新樹狀柱「速度」,並給它一個不同數量的每一秒, 像一個下載管理器。
import gtk
import gtk.glade
import random
builder = gtk.Builder()
builder.add_from_file('ttt.glade')
window = builder.get_object('window1')
treeview = builder.get_object('treeview1')
store = builder.get_object('liststore1')
column_n = ['File','Size','Speed']
rendererText = gtk.CellRendererText()
for i in range(10):
foo = random.randint(100,256)
list_ = [('arquivo1.tar.gz', '10MB', '%s k/s' % foo)]
for x,y in zip(column_n,range(3)):
column = gtk.TreeViewColumn(x, rendererText, text=y)
column.set_sort_column_id(0)
treeview.append_column(column)
for list_index in list_:
store.append([list_index[0],list_index[1],list_index[2]])
window.show_all()
當我偶然發現了timeout_add函數編程的PyGTK我是一個快樂的人。 – 2010-06-23 15:44:58
不要忘記返回'False'使其停止(儘管不返回應該工作,因爲這意味着'None')。 'idle_add'函數也非常有用:) – detly 2010-06-23 15:56:53