PyQt QTableView单击后,如何知道行和列

时间:2017-07-18 06:29:22

标签: python pyqt

在表格视图中,模型,当您单击单元格时,您对单元格行和列有何了解方法?

版本:
PyQt : 4.11.4
Python : 3.5.3

这些是我对表格视图的设置,模型。

def __init__(self, parent=None):
        QtGui.QWidget.__init__(self, parent)
        self.ntableView = QtGui.QTableView()
        self.nlayout = QtGui.QVBoxLayout()
        self.nmodel = QtGui.QStandardItemModel()
        self.ntableView.setModel(self.nmodel)
        self.nlayout.addWidget(self.ntableView)
        self.setLayout(self.nlayout)
        self.func_mappingSignal()

def func_mappingSignal(self):
        self.ntableView.clicked.connect(self.func_test)

def func_test(self, item):
        # http://www.python-forum.org/viewtopic.php?f=11&t=16817
        cellContent = item.data()
        print(cellContent)  # test
        sf = "You clicked on {}".format(cellContent)
        print(sf)

1 个答案:

答案 0 :(得分:2)

如果你想获得点击单元格的坐标,你可以使用libgmp.so.3信号处理程序的参数,就像你调用它clicked一样(在这种情况下它是item

QModelIndex

并获得def func_test(self, item): 个值。

item.column(), item.row()