QListView点击事件获取项pyqt类

时间:2018-12-11 05:42:41

标签: python pyqt

我正在创建一个工具来创建机器学习数据集。 我想通过标签在列表视图的左侧创建一个图像视图。 我首先打开文件,并在左侧列表视图中显示该列表。 如果单击左侧列表视图中的项目,则右侧的图形会更改。 当我单击列表视图时,被阻止获取项目。

class ListViewWidget(QListView):
def __init__(self, parent=None):
    super(ListViewWidget, self).__init__(parent)
    # model = QStandardItemModel()
    # for filePath in filePaths:
    #     model.appendRow(QStandardItem(filePath))
    # self.setModel(model)
    self.model = QStandardItemModel()
def addItem(self, filePaths):
    print(filePaths[0])
    # self.model = QStandardItemModel()
    for filePath in filePaths[0]:
        print(filePath )
        self.model.appendRow(QStandardItem(filePath))
    self.setModel(self.model)

def selectionChanged(self, QItemSelection, QItemSelection_1):
    super().selectionChanged(QItemSelection, QItemSelection_1)
    # index = QItemSelection.indexes()
    # print(index.row())
    print(type(QItemSelection))
    print(QItemSelection)
    print(type(QItemSelection.indexes()))
    # print(QItemSelection.indexes()[0])

PyQt5.QtCore.QItemSelection类

PyQt5.QtCore.QItemSelection对象位于0x000002044BEA77B8

类“列表”

PyQt5.QtCore.QModelIndex对象位于0x000002044BEA7898

仅这些输出。 我尝试了.row()但出现错误 我似乎误解了pyqt的整个结构。

如果要获取单击列表视图的内容,应如何更改?

0 个答案:

没有答案