Pyqt5 qtablewidget 检测单元格何时发生变化

Jav*_*ier 0 python qtablewidget pyqt5

我的 Python Pyqt5 应用程序上有一个 tableWidget。问题是,当特定单元格发生变化时,我试图连接到 calculadora 函数,所以我有两个问题:

  • .cellChanged 和 itemChanged. 之间有什么区别?

-现在我正在使用这个:

self.ui.tableWidget_Calculadora.itemChanged.connect(self.calculadora)

def calculadora_1(self):
      print("Cell 1,1 Changes")
Run Code Online (Sandbox Code Playgroud)

但我想更具体一些,并在例如单元格 (1,1) 发生变化时进行连接,而不是任何单元格,即我的代码当前所做的事情。

我尝试使用这个:

self.ui.tableWidget_Calculadora.itemChanged(1,1).connect(self.calculadora)
Run Code Online (Sandbox Code Playgroud)

但我收到了这个错误:

TypeError: native Qt signal is not callable
Run Code Online (Sandbox Code Playgroud)

谢谢。

eyl*_*esc 5

您必须根据传输信号的 QTableWidget 对插槽进行过滤:

self.ui.tableWidget_Calculadora.itemChanged.connect(self.calculadora)
Run Code Online (Sandbox Code Playgroud)
def calculadora_1(self, item):
      if item.row() == 1 and item.column() == 1:
          print("Cell 1,1 Changes")
Run Code Online (Sandbox Code Playgroud)