从TreeModel中的选定索引中检索特定数据

时间:2019-06-24 01:07:24

标签: python python-3.x pyqt pyqt5 qstandarditemmodel

我使用自定义模型填充TreeView,并尝试使用

        for ix in self.dataView.selectedIndexes():
            text = ix.data()  # or ix.data()
            print(text)
     

但这会打印该列(索引)中的所有数据...这是我使用的模型model = QStandardItemModel(0, 3, parent)model used

的图片

我的问题是我不需要所有数据,我需要第三行的数据(特定数据),即文件路径

这是输出,使用以后的代码

We & Love.txt
11.630% 
C:\Users\Black Laptop\Desktop\Work\We & Love.txt

我只需要第三个数据,不是全部,谢谢

1 个答案:

答案 0 :(得分:2)

QModelIndex与每个项目相关联,在您的情况下,您拥有完整的行之一,因此解决方案是按列过滤:

for ix in self.dataView.selectedIndexes():
    # the indexes of the column start at 0 so the 3rd column has index 2
    if ix.column() == 2:
        text = ix.data()
        print(text)