1

获取Treeview数据的方法是什么?

我有一些行,我想将数据保存在 XML 文件中,但我不知道如何保存行数据以传递给 XML 函数创建者。

非常感谢!


感谢您的回复!这里有一些代码:

def create_xml(self, path, model):
    from lxml import etree
    print len(model) #that's work
        self.model = self.treeview.get_model()

    if(len(model) > 0):
        root = etree.Element("lista_tareas")
        iter = self.model.get_iter_first()

        contatore = 1
        while iter:
            #from here doesn't work, 
            # 'gtk.ListStore' object has no attribute 'COL_DESCRIZIONE'
            descrizione_c = self.model.get_value(iter, self.model.COL_DESCRIZIONE) 
            data_limite_c = model.get_value(iter, COL_DATA_LIMITE)
            priorita_c =  model.get_value(iter, COL_PRIORITA)
            realizzato_c = model.get_value(iter, COL_REALIZZATO)
            root.append(etree.Element("tarea", _id = contatore, realizzato = realizzato_c, data_limite = data_limite_c, priorita = priorita_c))
            root.appendSubElement(tarea, "description")
            tarea.text = descrizione_c

            iter = model.iter_next(iter)
        outFile = open('homemade.xml', 'w')
        doc.write(outFile)

这是调用函数的按钮:

self.save_button.connect("clicked", self.create_xml, self.model_add)
4

1 回答 1

0

A)您可以轻松访问保存treeviewwith数据的模型,treeview.get_model()并且可以轻松迭代返回的对象。由于您不提供任何代码,因此很难说出您究竟需要如何做。在任何情况下。stackoverflow 上应该有很多关于如何使用树视图和树模型的示例。

B)然后你需要制作一个 xml 结构并将其保存起来,供你使用etree(其中包括,但我发现它很容易使用)http://docs.python.org/library/xml.etree.elementtree。 html#

于 2012-10-16T10:21:07.093 回答