Python PyQt QTableView点击后,如何知道行和列
在模型的表格视图中,当您单击单元格时,您知道有关单元格行和列的哪些方法?Python PyQt QTableView点击后,如何知道行和列,python,pyqt,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()
版本:
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)
如果您想获得单击单元格的坐标,可以使用
clicked
信号处理程序的参数,就像您调用它item
(在本例中是QModelIndex
)
并获取item.column()、item.row()
值
像
def func_test(self, item):
sf = "You clicked on {0}x{1}".format(item.column(), item.row())