连接QTableView中的SelectionChanged信号产生段错误与PyQt的(Connec

2019-07-19 17:13发布

我有一个PyQt的应用QTableView中,我要跟踪的选择变化时的感觉。 我已经尝试了信号连接到如下插槽(使用的建议本页面 :

self.view.selectionModel().selectionChanged.connect(self.selChanged)

在其连接到所述槽被限定为:

def selChanged(self, selected, deselected):
        print "Sel changed"

但是,每当我加载在其上QTableView中驻留的QMainWindow中,立刻得到分段错误。

我是不是傻了吗?

Answer 1:

我有一个类似的问题,修复在这里: 使用QItemSelectionModel用而QListView当段错误:PySide(?)

也就是说,更换:

self.view.selectionModel().selectionChanged.connect(self.selChanged)

有两个命令:

selectionModel = self.view.selectionModel()
selectionModel.selectionChanged.connect(self.selChanged)

不知道为什么这工作,坦率地说。



Answer 2:

这已经被固定现在,事实证明,我使用的是旧版本的Qt的那台机器上 - 这似乎导致崩溃。

这个故事的寓意是:如果你的代码崩溃了没有合理的理由,检查所有的依存关系(在这种情况下,Qt和PyQt的)是最新的更新。



文章来源: Connecting QTableView selectionChanged signal produces segfault with PyQt