PyQt 连接中的参数
Posted
技术标签:
【中文标题】PyQt 连接中的参数【英文标题】:Parameter in PyQt connect 【发布时间】:2018-05-25 17:23:49 【问题描述】:我看到的关于将 PyQt4 信号/插槽转换为 PyQt5 的示例非常简单,例如将按钮单击连接到更改标签。但是下面的语句应该如何转换:
self.connect(self.tableWidget,
SIGNAL("itemChanged(QTableWidgetItem*)"),
self.tableItemChanged)
itemChanged 的参数让我感到困惑。我试过了,通过类比的例子:
self.tableWidget.itemChanged(
QTableWidgetItem*).connect(self.tableItemChanged)
谢谢!
【问题讨论】:
【参考方案1】:当您建立new syntax 连接时,无需指明信号发送的参数类型,除非在同一个类中有同名的信号,但在您的情况下不是,所以以下将成为解决方案:
self.tableWidget.itemChanged.connect(self.tableItemChanged)
异常的典型例子是QComboBox
:激活信号可以发送激活项的字符串或激活项的索引,所以这里要指明我们想要的数据类型。
combobox.activated[str].connect(self.handle_string)
combobox.activated[int].connect(self.handle_int)
【讨论】:
感谢 eyllanesc!您能否举一个您提到的异常示例“同一类中具有相同名称的信号”?以上是关于PyQt 连接中的参数的主要内容,如果未能解决你的问题,请参考以下文章