获取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)
答案 0 :(得分:0)
A)您可以轻松访问包含treeview
treeview.get_model()
数据的模型,并且可以轻松地迭代返回的对象。由于您没有提供任何代码,因此很难说明您需要做什么。在任何情况下。在stackoverflow上应该有关于如何使用treeviews和treemodel的许多示例。
B)然后你需要制作一个xml结构并保存出来,你可以使用etree
(除其他外,但我发现它很容易使用)http://docs.python.org/library/xml.etree.elementtree.html#