我尝试使用PyQt4重新实现QTableWidget.cellActivated(行,数字),以捕获当前活动单元格的坐标。下面的示例无法按预期工作,单击单元格时不会激活该方法。我做错了什么?
class DictionaryTable(QtGui.QTableWidget):
def __init__(self, parent=None):
QtGui.QTableWidget.__init__(self, parent)
def cellActivated(self, row, column):
print row, column
答案 0 :(得分:3)
查看docs,我看到了:
void QTableWidget :: cellActivated(int row,int column)[signal]
此 当行和列指定的单元格已经发出时,将发出信号 激活此功能在Qt 4.1中引入。
这是一个信号,而不是一个事件。所以你不需要[重新]实现cellActivated
方法(它不是方法,它是信号类型的类属性)。您需要连接信号:
class DictionaryTable(QtGui.QTableWidget):
def __init__(self, language_code, parent=None):
QtGui.QTableWidget.__init__(self, parent)
self.cellActivated.connect(self.handleCellActivated)
def handleCellActivated(self, row, column):
print row, column