【发布时间】:2017-06-19 19:52:07
【问题描述】:
我有 QTDesigner 5 的问题,这应该是微不足道的,但我就是想不通。
我想要做的是在单击按钮时打开第二个窗口: 我用 QTDesigner (PyQT5!) 设计了主窗口和辅助窗口,并用 pyuic 将它们转换为 .py 文件。使用以下代码打开主窗口时没有问题:
from PyQt5 import QtGui, QtWidgets, QtCore, uic
import UI14 as UIImport
import GIPrompt as GIImport
class MainWindow(UIImport.Ui_MainWindow):
def __init__(self, window):
UIImport.Ui_MainWindow.__init__(self)
self.setupUi(window)
self.radioButtonGI.clicked.connect(self.openGIPrompt)
def openGIPrompt(self):
windowGI = QtWidgets.QDialog()
Gi = GIPrompt(windowGI)
windowGI.show()
class GIPrompt(GIImport.Ui_GIPrompt):
def __init__(self, windowGI):
GIImport.Ui_GIPrompt.__init__(self)
self.setupUi(windowGI)
if __name__ == '__main__':
app = QtWidgets.QApplication(sys.argv)
window = QtWidgets.QMainWindow()
prog = MainWindow(window)
window.show()
sys.exit(app.exec_())
如果我将以下内容添加到主函数中,“GiPrompt”窗口也会与主窗口一起打开:
if __name__ == '__main__':
app = QtWidgets.QApplication(sys.argv)
window = QtWidgets.QMainWindow()
prog = MainWindow(window)
window.show()
"""Open secondWindow"""
windowGI = QtWidgets.QDialog()
Gi = GIPrompt(windowGI)
windowGI.show()
sys.exit(app.exec_())
如果我尝试通过 openGIPrompt 函数打开第二个窗口,则没有任何反应。我没有收到错误消息,也没有出现任何窗口。然而,打印命令告诉我第二个窗口的 init_function 被调用...
有人有想法,问题可能是什么?
提前致谢!
【问题讨论】:
标签: python class user-interface window pyqt5