2011-01-12 118 views
1

我有基于模型的基于proxymodel的treeview。 所以我得到一个表格,可以过滤和分类。Pyqt - 从模型获取CSV

我只想将此表的当前视图导出为CSV文件。 正是我所看到的,导出到文件或打印。

我想我必须使用proxymodel,对吧? 我找不到方法行或类似的东西。

真的,我不得不使用方法data(),rowCount()和collumnCount()?

感谢

回答

2

我不知道任何CSV解析器或出口商QAbstractItemModels的,所以我认为你必须编写自己的代码的出口,像这样(pythonish伪代码):

for row in range(model.rowCount()): 
    for col in range(model.columnCount()): 
     value = model.index(row, col, QModelIndex()).data(Qt.DisplayRole).toString() 
     #write v, add separator... 
    #finish row... 

仅使用泛型QAbstractItemModel API,它适用于所有模型,代理或不适用。