我的pyqt4gui的类MainWindow(QMainWindow)
现在已经增长了,我想以某种方式将其拆分。问题是,所有处理信号的函数都是相互关联的,并影响类的其他函数。有没有办法把它分成几个类/文件?也许把所有的信号分成一个类?我真的不明白如何从技术上做到这一点。。。我还听说Qt(或PyQt)对多重继承有一些限制,这可以解决我猜想的问题(同样,对我来说不太明显)。在
就像它现在的样子一样(当然非常简单):
calss MainWindow(QMainWindow):
...
def f1(self):
if self.a1 == '...':
...
def f2(self):
if self.a2 == '...':
...
def update(self):
self.f3()
self.f4()
self.lineEdit.setText(self.a3)
...
...
def on_radioButton_toggled(self):
if self.radioButton.isChecked():
self.a1 = '...'
def on_comboBox_currentIndexChanged(self):
if self.checkBox.isChecked():
self.a2 = '...'
self.f1()
else:
self.f2()
self.update()
...
在我的应用程序中,我是这样做的,有一个主窗口包含子窗口(框架和东西…),主窗口基本上做两件事:初始化它的子窗口并连接它们之间的信号。像这样,你有一个视图的层次结构,处理这个大问题要简单得多。在
我认为从你的程序到一个更层次化的程序并没有一个无痛的转变,我可以说:你应该早点知道,但我没有 设计主窗口及其子窗口QTdesigner非常方便。在
是的,一个类不应该继承多个PyQt类的形式。在
相关问题 更多 >
编程相关推荐