[英]PyQt4:Unable to open 2 gui windows at a time
import sys
from PyQt4 import QtCore, QtGui
from test_ui import Ui_MainWindow
class StartQt4(QtGui.QMainWindow):
def __init__(self,parent=None):
QtGui.QWidget.__init__(self)
self.ui=Ui_MainWindow()
self.ui2=Ui_MainWindow()
self.ui2.setupUi(self) # ui2 setup
self.ui.setupUi(self) # ui setup .interchanging these 2 lines gives 2 guis
QtCore.QObject.connect(self.ui.button_open,QtCore.SIGNAL("clicked()"),self.file_open)
def file_open(self):
self.ui.editor_window.setText('Yes u are doing good')
if __name__ == "__main__":
app=QtGui.QApplication(sys.argv)
myapp=StartQt4()
myapp.show()
sys.exit(app.exec_())
试图创建简单的pyqt4 gui。我的目标是一次打开两个gui窗口,因此创建了2个对象ui
ui2
。通过交换评论的行,它工作正常,2个窗口打开。但是当我离开它时这个,只有ui
对象窗口被打开。怎么可能。他们只是在显示之前在不同时间调用的方法( myapp.show()
)对吗? 刚开始学习pyqt4。
生成的类Ui_MainWindow
不代表窗口本身,只代表其中包含的小部件。 该窗口是您传递给setupUi()
的self
参数。
要拥有2个窗口,您需要创建2个StartQt4
对象,每个对象只有1个Ui_MainWindow
,并为每个对象调用show()
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.