Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Python: Разработка GUI > Обновить TreeView в PyGTK


Автор: astoon 9.4.2007, 15:16
При запуске приложения список self.db.list заполняется значениями из базы данных
и выводится в TreeView кодом следующего вида:
Код

model = gtk.ListStore(str)
        
for item in self.db.list:
    iter = model.append()
    model.set(iter, 0, item)
        
treeview = gtk.TreeView(model)
        
render = gtk.CellRendererText()
tvcolumn = gtk.TreeViewColumn('My listing', render, text=0)
        
treeview.append_column(tvcolumn)
treeview.set_search_column(0)



Добавление элементов в список self.db.list производится диалогом:
Код

def new_item(self, action):
    dialog = gtk.Dialog('Create new item', self, 0,
                    (gtk.STOCK_CANCEL, gtk.RESPONSE_CANCEL,
                     gtk.STOCK_OK, gtk.RESPONSE_OK))
    dialog.connect('response', lambda d, r: d.destroy())
    dialog.set_default_size(400, 100)
    
    label = gtk.Label('Enter new item')
    dialog.vbox.pack_start(label)
    
    entry = gtk.Entry()
    dialog.vbox.pack_start(entry)
         
    dialog.show_all()
    
    response = dialog.run()
    self.db.CreateNewItem(entry.get_text())
    
    dialog.destroy()

(где метод self.db.CreateNewItem() добавляет значения в self.db.list)

Как добиться, чтобы при закрытии диалогового окна TreeView обновилась ?

Че-то у меня никак не получается  smile 

Автор: pythonwin 10.4.2007, 08:42
попробуй спросить в http://python.com.ua/forum/viewforum.php?id=18
возможно проблема такая же как и в http://python.com.ua/forum/viewtopic.php?id=653

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)