处理多个windows Qt4 python的最佳方法
我有两个主窗口,将运行所有的时间和打开其他窗口。每个窗口都必须相互通信。所有窗口都是用qt designer创建的,正如我在另一个问题中读到的,我不应该修改这些文件,所以我尝试创建一个新类(communicator)来处理所有作业。处理多个windows Qt4 python的最佳方法,python,qt,user-interface,pyqt,pyqt4,Python,Qt,User Interface,Pyqt,Pyqt4,我有两个主窗口,将运行所有的时间和打开其他窗口。每个窗口都必须相互通信。所有窗口都是用qt designer创建的,正如我在另一个问题中读到的,我不应该修改这些文件,所以我尝试创建一个新类(communicator)来处理所有作业。 构建这样一个项目的最佳方式是什么。因此,我现在如何才能在这些窗口之间进行最佳通信,例如,如果我在“self.mainWindows\u图像”中按下一个按钮,我想在“self.mainWindows\u分类器”中执行一些操作 from classifier impor
构建这样一个项目的最佳方式是什么。因此,我现在如何才能在这些窗口之间进行最佳通信,例如,如果我在“self.mainWindows\u图像”中按下一个按钮,我想在“self.mainWindows\u分类器”中执行一些操作
from classifier import Form as Form_classifier
from cnn_avg import Form as Form_cnn_avg
from images import Form as Form_images
from PyQt4.QtGui import *
from PyQt4.QtCore import *
import sys
class Communicator():
def __init__(self, parent=None):
self.mainWindow_images = Form_images()
self.mainWindow_images.show()
self.mainWindow_classifier = Form_classifier()
self.mainWindow_classifier.show()
def main():
app = QApplication(sys.argv)
app.setStyle('cleanlooks')
comm = Communicator()
sys.exit(app.exec_())
if __name__ == '__main__':
main()
Qt Designer生成的其中一个窗口文件具有附加的-w标志:
class Ui_Form(object):
def setupUi(self, Form):
Form.setObjectName(_fromUtf8("Form"))
Form.resize(1145, 654)
...
class Form(QtGui.QWidget, Ui_Form):
def __init__(self, parent=None, f=QtCore.Qt.WindowFlags()):
QtGui.QWidget.__init__(self, parent, f)
self.setupUi(self)
我想这样做,并将setImage方法添加到mainWindow_分类器中,因为正如我提到的,我不应该修改生成的qt python文件:
self.mainWindow_classifier.pushButton.clicked.connect(self.setImage)
def setImage(self):
# change QLabel in self.mainWindow_images
创建可编辑的PyQt对象的实例。例如,
class Communicator(QMainWindow)
将创建一个可以自由编辑的QMainWindow
实例创建可以编辑的PyQt对象实例。例如,classcommunicator(QMainWindow)
将创建一个可以自由编辑的QMainWindow
实例