【发布时间】:2011-08-07 00:23:24
【问题描述】:
大家好,我知道这个问题不够清楚(找不到如何用一行来解释这个问题)。我正在做一个项目,我在一个主类中包含一个集中的 gui,项目的各种组件由其他类的组合对象组成(编码在单独的文件中)。为了继续交换数据,每个对象也包含主类的对象(编辑:将尝试 E.Bendersky 建议的方法)。这样各个组件的信号就分别连接起来了。
这是classA的构造函数中的连接代码;
QtCore.QObject.connect(self.ui.pushButton, QtCore.SIGNAL("clicked()"), self.impAln)
QtCore.QObject.connect(self.ui.comboBox_2, QtCore.SIGNAL("currentIndexChanged(int)"), self.makeAlnTable)
QtCore.QObject.connect(self.ui.pushButton_2, QtCore.SIGNAL("clicked()"), self.reset)
classB的构造函数中的连接代码;
QtCore.QObject.connect(self.ui.comboBox_3, QtCore.SIGNAL("currentIndexChanged(int)"), self.enableLineEdits)
QtCore.QObject.connect(self.ui.comboBox_4, QtCore.SIGNAL("currentIndexChanged(int)"), self.enableLineEdits)
QtCore.QObject.connect(self.ui.comboBox_5, QtCore.SIGNAL("currentIndexChanged(int)"), self.enableLineEdits)
QtCore.QObject.connect(self.ui.pushButton_4, QtCore.SIGNAL("clicked()"), self.wrdMaker)
QtCore.QObject.connect(self.ui.pushButton_3, QtCore.SIGNAL("clicked()"), self.reset)
问题在于,当创建 classA 的实例时,连接和信号工作正常。但是当创建 classB 的实例时,相应的信号不起作用(按钮不会启动方法等;不会引发错误/异常)。我尝试在网上查找“使用 Python 和 Qt 进行快速 GUI 编程”,但没有一个能解决这个特定问题。
非常感谢任何帮助,在此先感谢..
【问题讨论】:
标签: python python-3.x pyqt pyqt4 signals-slots